|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Как взять в цикл FOR имена изнутри самого исполняемого CMD |
|
CMD/BAT - Как взять в цикл FOR имена изнутри самого исполняемого CMD
|
Новый участник Сообщения: 42 |
Здравия всем!
Уважаемые знатоки, требуется ваша помощь! Есть стандартный цикл, который берёт из внешнего файла имена и записывает их в другой файл! Пока этих файлов была пара, было терпимо, а теперь россыпь из десятка файлов начинает раздражать! ![]() Возможно ли сделать так, чтобы цикл брал имена из списка внутри самого исполняемого CMD ? Например, цикл обращается к некоему списку имён, который прячется в конце файла после EXIT и дальше записывает их во внешний файл..
Крайне благодарен, если есть решение! |
|
------- Отправлено: 07:07, 11-04-2025 |
Новый участник Сообщения: 42
|
Профиль | Отправить PM | Цитировать DJ Mogarych,
Цитата DJ Mogarych:
![]() megaloman, это прям КРУТО! ![]() только я не совсем ещё понял, как это работает.. надо разобраться, как записывать не все файлы сразу, а нужный в конкретный момент.. можно я попробую разобраться и ещё раз Вас спрошу, если понадобится? megaloman, если я правильно понял, цикл
находит все @S, вызывает функцию, которая записывает найденные имена в файлы, которые созданы строкой выше? а если в конкретный момент времени мне надо записать имена из конкретного списка в конкретный файл, то мне достаточно только самой функции :Out без перебора всех списков в цикле? только нужно подставить конкретные имена вместо переменных в этот цикл, опустив предыдущие 2 цикла перебора файлов и списков?
|
|
------- Последний раз редактировалось alexys2004, 12-04-2025 в 06:45. Отправлено: 06:28, 12-04-2025 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 42
|
Профиль | Отправить PM | Цитировать megaloman,
сократил вот так:
как ещё я могу сократить? например, чтобы вообще без вызова функции? я буду передавать название списка и внешнего файла двумя переменными. |
------- Отправлено: 07:04, 12-04-2025 | #12 |
Deadooshka Сообщения: 2559
|
Профиль | Отправить PM | Цитировать Цитата alexys2004:
|
|
Отправлено: 10:47, 12-04-2025 | #13 |
Ветеран Сообщения: 2733
|
Профиль | Отправить PM | Цитировать @Echo Off &Cls If Not "%~1"=="" If Not "%~2"=="" GoTo :Begin Echo The script arguments must contain the name of the list and the name of the output file! Echo Script terminated! &Pause &Exit /B 2 :Begin If Not Exist "%~dp2" (Echo Folder "%~dp2" not found &Pause &Exit /B 2) Else (2>nul Del "%~dpnx1") Set /A n=-1 For /f "usebackq tokens=1* delims=:" %%i IN (`FindStr /I /R /N /C:"^:%~1$" "%~dpnx0"`) Do Set /A n=%%i If %n% LSS 0 (Echo List "%~1" not found &Pause &Exit /B 2) For /f "usebackq delims=" %%s IN (`More +%n% "%~dpnx0"`) Do ( Echo "%%s"|>nul Find /I ":@S"&&(Pause &Exit /B) >>"%~2" Echo %%s ) Pause Exit /B :@S1 C:\Program Files\1 skjhdk kslhjdljsl sl;djl;jlsjd.txt C:\Program Files\Advanced IP Scanner\2 sslm jds;ll; dalj;al lajl;akjsl;ka.png C:\Program Files (x86)\3 aklljalkjs akjslkajlasjl akljlakjljs.dbf :@S2 C:\Program Files\4 adSA SDASD DADADD.xls C:\Program Files (x86)\5 aSDFDSA CSAS SAASAS.doc :@S12345 8 adSA SDASD DADADD.xls 9 aSDFDSA CSAS SAASAS.doc :@S3 C:\Program Files (x86)\6 adSA SDASD DADADD.xls C:\Program Files\7 aSDFDSA CSAS SAASAS.doc |
------- Отправлено: 11:08, 12-04-2025 | #14 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Переопределить вывод внутри самого файла CMD | El Scorpio | Скриптовые языки администрирования Windows | 3 | 01-11-2022 22:07 | |
CMD/BAT - Запуск исполняемого файла (EXE) через скрипт CMD с вводом параметров | dm7203 | Скриптовые языки администрирования Windows | 1 | 01-11-2018 18:24 | |
CMD/BAT - [решено] как запустить cmd на удаленной машине чтобы cmd отобразилось у меня | Mickle | Скриптовые языки администрирования Windows | 13 | 21-09-2010 14:43 | |
Интерфейс - Как посмотреть версию исполняемого файла с произвольным расширением | Vic21 | Microsoft Windows 7 | 2 | 16-11-2009 15:12 | |
CMD/BAT - [решено]*.cmd: цикл перебирает значения и каждое значение проверяется | skeletor | Скриптовые языки администрирования Windows | 1 | 15-03-2007 16:11 |
|