Hier ist ein gutes Beispiel, wie ein Befehl ausgeführt wird, wenn eine Datei vorhanden ist oder nicht:
if exist C:\myprogram\sync\data.handler echo Now Exiting && Exit
if not exist C:\myprogram\html\data.sql Exit
Wir werden diese drei Dateien nehmen und an einem vorübergehenden Ort ablegen. Nach dem Löschen des Ordners werden diese drei Dateien wiederhergestellt.
xcopy "test" "C:\temp"
xcopy "test2" "C:\temp"
del C:\myprogram\sync\
xcopy "C:\temp" "test"
xcopy "C:\temp" "test2"
del "c:\temp"
Verwenden Sie den Befehl XCOPY :
xcopy "C:\myprogram\html\data.sql" /c /d /h /e /i /y "C:\myprogram\sync\"
Ich werde erklären, was das /c /d /h /e /i /y
bedeutet:
/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
Rufen Sie eine andere Batch-Datei mit der Option sync.bat myprogram.ini auf.
Ich bin nicht sicher, was Sie damit meinen, aber wenn Sie nur beide Dateien öffnen möchten, geben Sie einfach den Pfad der Datei wie folgt ein
Path/sync.bat
Path/myprogram.ini
Wenn es in der Bash-Umgebung war, war es für mich einfach, aber ich weiß nicht, wie ich testen soll, ob eine Datei oder ein Ordner vorhanden ist und ob es sich um eine Datei oder einen Ordner handelt.
Sie verwenden eine Batchdatei. Sie haben bereits erwähnt, dass Sie eine .bat-Datei erstellen müssen, um dies zu verwenden:
Ich muss eine .BAT-Datei erstellen, die dies tut: