Tengo que crear un .BAT
archivo que haga esto:
- Si
C:\myprogram\sync\data.handler
existe, salga; - Si
C:\myprogram\html\data.sql
no existe, salga; - En
C:\myprogram\sync\
eliminar todos los archivos y carpetas excepto (test
,test3
ytest2
) - Copiar
C:\myprogram\html\data.sql
aC:\myprogram\sync\
- Llame a otro archivo por lotes con la opción
sync.bat myprogram.ini
.
Si fue en el entorno Bash, fue fácil para mí, pero no sé cómo probar si existe un archivo o carpeta y si es un archivo o carpeta.
windows
batch-file
cmd
cusspvz
fuente
fuente
cmd
también; por favor, haz una pregunta diferente, no cuestan mucho. Agregar un comentario de pregunta adicional a uno que tenga más de 3 años probablemente no obtenga muchas respuestas (pero primero marque SO para obtener respuestas a esta pregunta precisa, de lo contrario obtendrá su nueva pregunta marcada como un duplicado ...)IF /?
archivo de ayuda:The ELSE clause must occur on the same line as the command after the IF.
Esto me quemó. Espero que te ayude.If Not Exist "%FilePath% ( command )
. Tenga en cuenta que el murciélago usa llaves en(
lugar de llaves{
Escriba IF /? para obtener ayuda sobre si, explica claramente cómo usar IF EXIST.
Para eliminar un árbol completo, excepto algunas carpetas, consulte la respuesta a esta pregunta: secuencia de comandos por lotes de Windows para eliminar todo en una carpeta excepto una
Finalmente copiar solo significa llamar COPIA y llamar a otro archivo bat se puede hacer así:
fuente
Aquí hay un buen ejemplo sobre cómo hacer un comando si un archivo existe o no:
Tomaremos esos tres archivos y los colocaremos en un lugar temporal. Después de eliminar la carpeta, restaurará esos tres archivos.
Use el comando XCOPY :
Explicaré lo que
/c /d /h /e /i /y
significa:No estoy seguro de lo que quieres decir con esto, pero si solo quieres abrir ambos archivos, simplemente coloca la ruta del archivo como
Estás utilizando un archivo por lotes. Mencionó anteriormente que debe crear un archivo .bat para usar esto:
fuente