Jonmey
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору MihailM Цитата: Здраствуйте , у меня вопрос: а как из списка файлов (с полными путями- каталогами) , создать файлы пустышки их этого списка ? Вообще такое возможно , через батник сделать, я про создание сразу многоуровневых каталогов.. | Типа такого: :: Создание файлов и папок по списку из текстового файла, :: содержащего полные имена. Файлы имеют нулевой размер, :: но его можно задать, изменив в последней команде 0 на нужное число (байт). :: @ECHO OFF &chcp 1251 >NUL &setlocal enableextensions SET lst=filelist.txt FOR /F "delims=" %%A IN (%lst%) DO ( IF NOT EXIST "%%~dpA" ( MKDIR "%%~dpA" ) IF NOT "%%A"=="%%~dpA" ( FSUTIL file createnew "%%A" 0 >NUL ) ) Добавлено: Измененная версия вышеприведенного батника, в отличие которой работает со списками, содержащими не только полные пути x:\папки_1_или_более\[имя_файла] но и относительные пути вида \папки_1_или_более\[имя_файла] папки_1_или_более\[имя_файла] Обратите внимание, если в списке присутствуют названия папок без слэша на конце ...папка\имя_подпапки (например, \папка1\папка2 ) то скрипт интерпретирует это как имя файла (а не папки) и создаст одноименный файл вместо папки. То есть, названия всех папок в файле списке должны заканчиваться слэшем ("\") @ECHO OFF &chcp 1251 >NUL &setlocal enableextensions SET lst=filelist.txt FOR /F "delims=" %%A IN (%lst%) DO ( IF NOT EXIST "%%~dpA" ( MKDIR "%%~dpA" ) IF NOT ""=="%%~nxA" ( FSUTIL file createnew "%%~fA" 0 >NUL ) ) Вместо строки FSUTIL file createnew "%%~fA" 0 >NUL (если у вас проблемы с созданием файлов, или если вам не нужно задавать размеры выходных файлов, что используется, например, при тестировании железа) можно использовать одну из строк: ECHO OFF >"%%~fA" COPY NUL "%%~fA" >NUL TYPE NUL >"%%~fA" REM:>"%%~fA" // вместо : может быть любой из + [ ] \ / . , ; CD.>"%%~fA" >NUL SET /p x=>"%%~fA" SET x=>"%%~fA" ?>"%%~fA" 2>NUL *>"%%~fA" 2>NUL Все строки в составе батника на корректность работы не проверял (только некоторые). Если будут проблемы - сообщайте в топике. | Всего записей: 1365 | Зарегистр. 17-01-2011 | Отправлено: 03:24 09-11-2018 | Исправлено: Jonmey, 03:29 10-11-2018 |
|