|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Удаление файлов по списку |
|
|
CMD/BAT - Удаление файлов по списку
|
Старожил Сообщения: 147 |
Здравствуйте! Прошу помощи.
For /f "tokens=*" %%i in (list.txt) do attrib -a %%i attrib -a %0 Исходя из данного скрипта, список удаляемых слов/строк должен находится в файле "list.txt" Вопрос: а как сделать так, что бы список слов/строк можно было прописать в самом скрипте, а не ссылаясь на отдельный файл со списком на удаление строк из "list.txt"? Спасибо. |
|
Отправлено: 10:44, 02-05-2017 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать пропишите в начале скрипта закомментированный список файлов и ссылайтесь на сам скрипт
|
Отправлено: 13:04, 02-05-2017 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 2726
|
Профиль | Отправить PM | Цитировать @Echo Off Cls Set "File=%~dpnx0" FOR /F "usebackq Skip=2 tokens=1 delims=[]" %%n IN (`Find /N "@@@@@" "%File%"`) DO Set /A NSkip=%%n FOR /F "usebackq delims=" %%f IN (`more +%NSkip% "%File%"`) DO Echo "%%f" pause GoTo :Eof @@@@@@@@@@@@@@@@@@@@ Z:\Box_In\exampl_report.xls Z:\Box_In\textfile.txt Z:\Box_In\Вывод_в_одну_строку.bat Z:\Box_In\Вывод_в_одну_строку.bat.txt Z:\Box_In\*.xlsx Z:\Box_In\Книга1.xls Z:\Box_In\Книга12345678.xls Z:\Box_In\Рекурсия_список_файлов_в_поддиректориях.vbs Z:\Box_In\Собрать данные из нескольких текстовых файлов.xls Вместо Echo напишите нужное Вам действие. Я не стал этого делать, так как в заголовке удалить, а в примере - изменить атрибут При развитии скрипта, если у Вас возникнет необходимость, список файлов должен быть после всего кода. |
------- Отправлено: 16:51, 02-05-2017 | #3 |
Старожил Сообщения: 231
|
Профиль | Отправить PM | Цитировать megaloman, Цитата megaloman:
При развитии скрипта, если у Вас возникнет необходимость, список файлов должен быть после всего кода. » это не обязательно - развивать можно например так: @ECHO OFF SET "BEGIN_MARKER=:ENDFILE1" SET "END_MARKER=:ENDFILE2" FOR /F "usebackq tokens=1 delims=:" %%a IN (`FINDSTR /N /B /C:"%BEGIN_MARKER%" "%~0"`) DO SET "SKIP_LINE=%%a" CALL :WORK "%SKIP_LINE%" "%END_MARKER%" "%~0" GOTO :EOF :WORK FOR /F "usebackq skip=%~1 tokens=1 eol=; delims=" %%a IN (`TYPE "%~3"`) DO IF NOT "%%a"=="%~2" (ECHO %%a) ELSE (GOTO :EOF) GOTO :EOF :ENDFILE1 ;1 2 3 4 5 :ENDFILE2 6 7 8 |
------- Последний раз редактировалось y--, 03-05-2017 в 09:15. Причина: Исправлены орфографические ошибки в текстовом описании Отправлено: 09:14, 03-05-2017 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Вообще, крайне желательно не использовать подобный подход. Должно быть:
|
|
Отправлено: 16:37, 03-05-2017 | #5 |
Ветеран Сообщения: 2726
|
Профиль | Отправить PM | Цитировать Iska,
Цитата М.Жванецкий:
|
|
------- Отправлено: 17:31, 03-05-2017 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать megaloman, тут Вы путаете. И там — таблицы отдельно, запросы отдельно. Когда Вам понадобятся разные наборы данных — порочность подхода сразу становится видна.
|
Отправлено: 18:02, 03-05-2017 | #7 |
Старожил Сообщения: 231
|
Профиль | Отправить PM | Цитировать Iska,
Цитата Iska:
Цитата Iska:
|
||
------- Отправлено: 19:31, 03-05-2017 | #8 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата y--:
Цитата y--:
|
||
Отправлено: 20:09, 03-05-2017 | #9 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать Цитата Iska:
в общем-то от этого (преждевременной оптимизации и заделов на будещее масштабирование) часто предостерегают и при обычной разработке ПО ну а конкретно такой подход чуть ли не Best Practice - exe файлы в основном для этого и придумали, чтобы впихать туда помимо кода ещё и ресурсы. Тут всё красивенько - не захардкодено, а отдельным списком |
|
Отправлено: 23:48, 03-05-2017 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Удаление файлов и папок по списку с выводом результата в файл | Sub-Zero | Скриптовые языки администрирования Windows | 0 | 08-12-2015 23:12 | |
CMD/BAT - распределение файлов по папкам по списку | bellagio | Скриптовые языки администрирования Windows | 1 | 11-05-2014 13:14 | |
CMD/BAT - Перемещение файлов по списку | Arsenik77 | Скриптовые языки администрирования Windows | 4 | 04-12-2011 20:43 | |
Прочие БД - Извлечение файлов по списку | Aviator | Программирование и базы данных | 1 | 22-02-2011 02:44 | |
[решено] Замена файлов по списку | Endy1 | Программирование в *nix | 9 | 15-02-2010 13:50 |
|