Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Помогите решить задачу

Ответить
Настройки темы
CMD/BAT - [решено] Помогите решить задачу

Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Привет всем.

Помогите решить задачу. Все перепробЫвал. Знаний не хватает разобраться самому.

Задача:
1. Поиск в подпапках всех файлов *.txt
2. По очереди поиск в каждом найденном файле строки с заданным именем и вывод этой строки в переменную

Сделал .bat, но он не работает. Скидывает на "Режим вывода команд на экран (ECHO) отключен."

Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

for /f "delims=" %%a in ('dir /b /s /a-d "*.txt"') do ( 
For /F "tokens=1* delims==" %%i In (%%a) Do Set %%i=%%j

echo %Stroka%
)
)

Отправлено: 16:38, 22-12-2019

 

Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


Цитата BobiBob:
в каждом найденном файле строки с заданным именем »
Как понять? Как это имя задано? И где его искать: в имени txt-файла или в содержимом?
Цитата BobiBob:
Скидывает на "Режим вывода команд на экран (ECHO) отключен." »
А Вы что-то иное хотели? Вы где-нибудь определили переменную %Stroka% чтобы увидет её содержимое?
Попробуйте проделать findstr /? >D:\findstr.txt и почитать в файле D:\findstr.txt хелп к этой команде. Возможно там путь к решению.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 22-12-2019 в 17:19.


Отправлено: 17:07, 22-12-2019 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 1274
Благодарности: 564

Профиль | Отправить PM | Цитировать


megaloman,
ну почему
Цитата megaloman:
Вы где-нибудь определили переменную %Stroka% чтобы увидет её содержимое »
вполне имеет место быть согласно
Цитата BobiBob:
Set %%i=%%j »
т.е. в файле может быть строка:
Stroka=Значение
и вывод был бы очевидным, но только если бы в 7й строке было записано как и подобает для ...enabledelayedexpansion
Код: Выделить весь код
...
echo !Stroka!
...
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:54, 22-12-2019 | #3


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата alpap:
alpap »
Спасибо. Я столько времени потратил, чтобы встроить этот код в другой скрипт, что просто не заметил написанных % вместо !. Теперь работает.

Отправлено: 21:41, 22-12-2019 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Помогите решить задачу

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
C/C++ - Помогите решить задачу Bokslaitner Программирование и базы данных 4 08-01-2018 18:06
C/C++ - помогите решить задачу С++ Лена Лебедева Программирование и базы данных 1 04-02-2014 15:09
C/C++ - Помогите решить задачу Urann Программирование и базы данных 11 14-05-2013 11:44
C/C++ - Помогите решить задачу zdughi Программирование и базы данных 1 01-05-2009 06:03
помогите решить задачу Guest Программирование и базы данных 2 21-05-2004 11:23




 
Переход