Я должен создать .BAT
файл, который делает это:
- Если
C:\myprogram\sync\data.handler
существует, выход; - Если
C:\myprogram\html\data.sql
не существует, выход; - В
C:\myprogram\sync\
удалить все файлы и папки, кроме (test
,test3
иtest2
) - Копировать
C:\myprogram\html\data.sql
вC:\myprogram\sync\
- Вызовите другой пакетный файл с опцией
sync.bat myprogram.ini
.
Если бы это было в среде Bash, это было бы легко для меня, но я не знаю, как проверить, существует ли файл или папка и является ли он файлом или папкой.
windows
batch-file
cmd
cusspvz
источник
источник
cmd
тоже - пожалуйста, задайте другой вопрос - они не стоят дорого. Добавление дополнительного комментария к вопросу, которому более 3 лет, вряд ли получит много ответов (но сначала проверьте SO на наличие ответов на этот точный вопрос, иначе вы получите новый вопрос, помеченный как дубликат ...)IF /?
справочного файла:The ELSE clause must occur on the same line as the command after the IF.
это обожгло меня. надеюсь, это поможет вам.If Not Exist "%FilePath% ( command )
. Обратите внимание, что летучая мышь использует фигурные скобки(
вместо фигурных скобок{
Тип IF /? чтобы получить справку о том, если, он четко объясняет, как использовать IF EXIST.
Чтобы удалить полное дерево, кроме некоторых папок, см. Ответ на этот вопрос: Пакетный скрипт Windows для удаления всего в папке, кроме одной
Наконец, копирование означает, что вызов COPY и вызов другого bat-файла могут быть выполнены следующим образом:
источник
Вот хороший пример того, как выполнить команду, если файл существует или не существует:
Мы возьмем эти три файла и поместим их во временное место. После удаления папки будут восстановлены эти три файла.
Используйте команду XCOPY :
Я объясню, что
/c /d /h /e /i /y
означает:Я не уверен, что вы подразумеваете под этим, но если вы просто хотите открыть оба этих файла, вы просто укажите путь к файлу, как
Вы используете командный файл. Вы упомянули ранее, вы должны создать файл .bat, чтобы использовать это:
источник