Aquí hay un buen ejemplo sobre cómo hacer un comando si un archivo existe o no:
if exist C:\myprogram\sync\data.handler echo Now Exiting && Exit
if not exist C:\myprogram\html\data.sql Exit
Tomaremos esos tres archivos y los colocaremos en un lugar temporal. Después de eliminar la carpeta, restaurará esos tres archivos.
xcopy "test" "C:\temp"
xcopy "test2" "C:\temp"
del C:\myprogram\sync\
xcopy "C:\temp" "test"
xcopy "C:\temp" "test2"
del "c:\temp"
Use el comando XCOPY :
xcopy "C:\myprogram\html\data.sql" /c /d /h /e /i /y "C:\myprogram\sync\"
Explicaré lo que /c /d /h /e /i /y
significa:
/C Continues copying even if errors occur.
/D:m-d-y Copies files changed on or after the specified date.
If no date is given, copies only those files whose
source time is newer than the destination time.
/H Copies hidden and system files also.
/E Copies directories and subdirectories, including empty ones.
Same as /S /E. May be used to modify /T.
/T Creates directory structure, but does not copy files. Does not
include empty directories or subdirectories. /T /E includes
/I If destination does not exist and copying more than one file,
assumes that destination must be a directory.
/Y Suppresses prompting to confirm you want to overwrite an
existing destination file.
`To see all the commands type`xcopy /? in cmd
Llame a otro archivo por lotes con la opción sync.bat myprogram.ini.
No estoy seguro de lo que quieres decir con esto, pero si solo quieres abrir ambos archivos, simplemente coloca la ruta del archivo como
Path/sync.bat
Path/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.
Estás utilizando un archivo por lotes. Mencionó anteriormente que debe crear un archivo .bat para usar esto:
Tengo que crear un archivo .BAT que haga esto: