“Conocimiento Problema>Convertir archivos

¿Cómo se usa archivos por lotes para copiar desde la misma carpeta que el archivo?

2014/9/23
Hay varias formas de copiar archivos del mismo directorio que el archivo por lotes en sí. Aquí hay algunos ejemplos, que demuestran diferentes escenarios y robustez:

Método 1:usando `%~ dp0` (más simple y más recomendado)

Este método utiliza la variable `%~ DP0`, que se expande a la unidad y la ruta del archivo por lotes actual. Este es el enfoque más confiable y recomendado.

`` `lote

@eco Off

Copiar "%~ dp0myfile.txt" "%~ dp0destinationfolder \ myfile.txt"

`` `` ``

* `%~ DP0`:Obtiene la unidad y la ruta del archivo por lotes.

* `myFile.txt`:el archivo que desea copiar. Reemplace esto con su nombre de archivo real.

* `DestinationFolder`:el nombre de la carpeta donde desea copiar el archivo. Crea esta carpeta de antemano si no existe. También puede usar rutas absolutas aquí si es necesario.

Método 2:usando `cd` (menos robusto)

Este método cambia el directorio a la ubicación del archivo por lotes antes de realizar la copia. Es menos robusto porque se basa en que el directorio de trabajo actual se establezca correctamente.

`` `lote

@eco Off

Pushd "%~ dp0"

Copiar myFile.txt DestinationFolder \ myfile.txt

POPD

`` `` ``

* `pushd"%~ dp0 "`:Cambia el directorio a la ubicación del archivo por lotes. `Pushd` guarda el directorio actual, lo que le permite restaurarlo más tarde.

* `POPD`:restaura el directorio original.

Método 3:Manejo de espacios en rutas de archivo (crucial para robustez)

Si sus nombres de archivo o rutas de carpetas contienen espacios, * debe * citarlos. Los ejemplos anteriores ya hacen esto, pero vale la pena enfatizarlo. El incumplimiento de la cita conducirá a errores.

Ejemplo con espacios:

`` `lote

@eco Off

Copiar "%~ dp0my file.txt" "%~ dp0destination carpeta \ my file.txt"

`` `` ``

Método 4:Copiar múltiples archivos usando comodines

Puede usar comodines para copiar varios archivos a la vez:

`` `lote

@eco Off

Copiar "%~ dp0*.txt" "%~ dp0DestinationFolder \"

`` `` ``

Esto copia todos los archivos `.txt` del directorio del archivo por lotes al 'DestinationFolder`.

Manejo de errores (importante)

Para obtener scripts más robustos, agregue el manejo de errores para verificar si la copia fue exitosa:

`` `lote

@eco Off

Copiar "%~ dp0myfile.txt" "%~ dp0destinationfolder \ myfile.txt"> nul 2> y 1

Si % ErrorLevel % ==0 (

El archivo de eco copiado con éxito.

) demás (

Echo Error de copia de copia del archivo. Código de error:%ErrorLevel %

)

`` `` ``

* `> nul 2> &1`:suprime la salida del comando` copy`.

* `if % ErrorLevel % ==0`:Verifica el nivel de error. `0` significa éxito.

Recuerde reemplazar `" myFile.txt "`, `" DestinationFolder "`, y otros marcadores de posición con su archivo real y nombres de carpetas. Siempre pruebe sus archivos por lotes a fondo. El manejo incorrecto de los espacios en nombres de archivo y rutas es una fuente común de errores.

Convertir archivos
Cómo convertir MP3 a archivos WAV en Linux
Cómo convertir MP3 a M4R
Cómo convertir un archivo PCG a SYX
Cómo convertir registros de archivos MP3 con un Programa
Cómo convertir ZVR a un MP3
Cómo convertir a MP3 YMP
¿Cómo se convierte Outlook Mac a PST?
Cómo convertir imágenes a pantalla
Conocimiento de la computadora © http://www.ordenador.online