Bir dosya varsa veya yoksa bir komutun nasıl yapılacağına ilişkin iyi bir örnek:
if exist C:\myprogram\sync\data.handler echo Now Exiting && Exit
if not exist C:\myprogram\html\data.sql Exit
Bu üç dosyayı alıp geçici bir yere koyacağız. Klasörü sildikten sonra, bu üç dosyayı geri yükler.
xcopy "test" "C:\temp"
xcopy "test2" "C:\temp"
del C:\myprogram\sync\
xcopy "C:\temp" "test"
xcopy "C:\temp" "test2"
del "c:\temp"
XCOPY komutunu kullanın :
xcopy "C:\myprogram\html\data.sql" /c /d /h /e /i /y "C:\myprogram\sync\"
Bunun ne /c /d /h /e /i /y
anlama geldiğini açıklayacağım :
/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
Sync.bat myprogram.ini seçeneği ile diğer toplu iş dosyalarını çağırın.
Bununla ne demek istediğinden emin değilim, ama sadece bu dosyaların her ikisini de açmak istiyorsan, dosyanın yolunu
Path/sync.bat
Path/myprogram.ini
Bash ortamında olsaydı benim için kolaydı, ancak bir dosya veya klasörün var olup olmadığını ve bir dosya veya klasör olup olmadığını nasıl test edeceğimi bilmiyorum.
Bir toplu iş dosyası kullanıyorsunuz. Daha önce, bunu kullanmak için bir .bat dosyası oluşturmanız gerektiğini söylemiştiniz:
Bunu yapan bir .BAT dosyası oluşturmak zorunda: