Для создания папки используется команда MKDIR или ее сокращенный аналог MD.Для создания папки из bat файла нужно использовать следующую команду:
MD FolderName
После выполнения такой команды будет создана папка FolderName в папке, откуда запущен bat файл. Чтобы создать файл в отличном от запуска bat файла месте, например в корне диска D, используйте явное указание расположения новой папки. Команда будет выглядеть так:
MD D:\FolderName
При создании папок можно пользоваться системными переменными. Например, можно создать в корне диска D папку с именем текущего пользователя. Для этого понадобится переменная %USERNAME%, а команда будет выглядеть следующим образом:
MD D:\%USERNAME%
Можно еще более усложнить команду и создать папку с именем текущего пользователя на системном диске его компьютера. Команда для этого будет выглядеть так:
MD %SYSTEMDRIVE%\%USERNAME%
При создании папок или файлов можно использовать любые системные переменные или их части. Следующий пример демонстрирует создание на системном диске компьютера пользователя папки с именем равным текущей дате.
set datetemp=%date:~-10% MD %SYSTEMDRIVE%\%datetemp%
Первая команда создает в памяти переменную datetemp, которая будет уничтожена по окончании работы bat файла.
То тех пор, пока bat файл не закончил свою работу есть возможность оперировать со значением этой переменной.
Переменной datetemp присваивается 10 символов справа налево от системной переменной DATE, т.е. от текущей даты.
Переменная DATE имеет формат Дн ДД.ММ.ГГГГ. Первые символы слева - имя дня недели и поэтому мы их отбрасываем и присваиваем временной переменной datetemp только текущую дату.
Этим не ограничивается список возможностей при создании папок. Вы можете опрерировать переменными так, как удобно Вам, создавая папки с уникальными, легко читаемыми названиями.
Получить список всех переменных можно при помощи команды SET.
@echo Start file>C:\1.txt
Создает файл на диске С, с названием 1.txt и содержимым Start file.
set datetemp=%date:~-10% @echo .>%SYSTEMDRIVE%\%DATETEMP%.txt
Сначала в памяти создаем переменную datetemp, которой присваиваем 10 символов справа налево от системной переменной DATE. Таким образом, теперь во временной переменной datetemp содержится только текущая дата.
Следующией строкой перенаправляем вывод символа точка в файл, имя которого берем из переменной datetemp, а расширение txt указываем явно.
Файл будет создан на системном диске компьютера, где выполняется bat файл.При сборе администратором информации о компьютерах в сети будет удобнее добавить к имени файла имя компьютера.Это легко можно сделать при помощи следующей команды:
@echo .>C:\FolderName\%COMPUTERNAME%.txt
Cоздастся на диске С текстовый файл с именем компьютера, на котором выполняется пакетный файл. Для создания файла с определенным именем можно использовать любые системные переменные, либо создать свои, на основе системных переменных и/или других данных.