it-swarm.com.ru

Проверка наличия папки с использованием файла .bat

Я хотел бы иметь возможность проверить, существует ли определенная папка (FolderA) и, если да, для отображения сообщения, а затем для выхода из пакетного файла.

Если FolderA не существует, я бы хотел проверить, существует ли другая папка (FolderB). Если FolderB не существует, должно отображаться сообщение и должна создаваться папка, а если FolderB существует, должно отображаться сообщение о том, что это так.

Кто-нибудь имеет представление о коде, который я мог бы просто использовать в блокноте для создания командного файла, чтобы позволить мне сделать это?

Все это нужно сделать в одном файле .bat.

139
user3179825

Попробуйте использовать это для файла:

IF EXIST yourfilename (
echo Yes 
) ELSE (
echo No
)

Замените свое имя файла тем, что вы называете.

Dir посмотрите на это https://jeffpar.github.io/kbarchive/kb/065/Q65994/

C:
IF NOT EXIST C:\WIN\ GOTO NOWINDIR
CD \WIN
:NOWINDIR

завершающей обратной косой черты ('\'), по-видимому, достаточно, чтобы различать каталоги и обычные файлы.

208
09stephenb

Я думаю, что ответ здесь (возможно, дубликат):

Как проверить, является ли файл каталогом в пакетном скрипте?

IF EXIST %VAR%\NUL ECHO It's a directory

Замените% VAR% вашим каталогом. Пожалуйста, прочитайте оригинальный ответ, потому что включает в себя подробности об обработке пробелов в имени папки.

Как сказал foxidrive, это может быть ненадежно для окон класса NT. Это работает для меня, но я знаю, что у него есть некоторые ограничения (которые вы можете найти в указанном вопросе)

if exist "c:\folder\" echo folder exists 

должно быть достаточно для современных окон.

29
Cosmin Vană