Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

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

Ответить
Настройки темы
CMD/BAT - [решено] Поиск файла, значения в файле и создания для них переменных

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


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

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


Добрый день.
Нужна помощь в написании следующего скрипта:
1. Необходимо найти на ПК файл с названием cspwork.txt, путь к этому файлу занести в переменную %home%
2. В этом файле несколько строк различного содержания, нужно найти строку в файле с содержанием "PATH=C:\CSP\test" и все содержимое данной строки, что стоит после PATH= занести в переменную %path1% (C:\CSP\test)
3. Удалить созданные переменные.
Помогите пожалуйста, спасибо!

Отправлено: 15:45, 29-02-2012

 

Ветеран


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

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


popoves, что Вы уже сделали, и что у Вас не получается?

Отправлено: 16:04, 29-02-2012 | #2



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

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


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


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

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


Получилось следующее:

:: присваиваем результату поиска пути к cspwork.txt значение переменной %home%
For /F "tokens=*" %%i in ('dir /b /s /a -d C:\cspwork.txt') do set home=%%i
:: присваиваем переменной %path1% значение из файла после PATH=
For /F "eol=; tokens=1* delims==" %%i In (%home%) Do Set %%i=%%j
PATH=%path1%

но почему-то не работает, с удалением переменных пока не разобрался, и хочется чтобы поиск осуществлялся на всех локальных дисках.

Отправлено: 17:42, 29-02-2012 | #3


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


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

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


Еще вопрос, как можно скрипт 2-го пункта:

"For /F "eol=; tokens=1* delims==" %%i In (%home%) Do Set %%i=%%j
PATH=%path1%" (ну или подобный/исправленный, этот пока не работает)

запустить не из BAT-файла, а из командной строки, набирая в одну строку?

Отправлено: 18:12, 29-02-2012 | #4


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


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

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


Все разобрался, я ошибся в одной строчке, поэтому не работало.
В итоге BAT:
:: присваиваем результату поиска пути к cspwork.txt значение переменной %home%
For /F "tokens=*" %%i in ('dir /b /s /a -d C:\cspwork.txt') do set home=%%i
:: присваиваем переменной %path1% значение из файла после PATH=
For /F "eol=; tokens=1* delims==" %%i In (%home%) Do Set %%i=%%j
PATH=%path1%

Из командной строки:
For /F "tokens=*" %i in ('dir /b /s /a -d C:\cspwork.txt') do set home=%i
For /F "eol=; tokens=1* delims==" %i In (%home%) Do Set %i=%j; PATH=%path1%

Последний вопрос: Данные переменные, как я понял, создаются на время одной cmd сессии, т.е. после закрытия bat-файла или командной строки (во втором случае), эти переменные недоступны. Как можно сделать их доступными независимо от закрытия сессии, т.е. на определенный промежуток времени, или как-то в реестре (системе) навсегда зарегистрировать, а потом удалить?

Отправлено: 20:59, 29-02-2012 | #5



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Смена кодировки текстового файла, поиск строки и разбор значения profcom Скриптовые языки администрирования Windows 0 10-11-2011 20:20
CMD/BAT - [решено] Задавать значения и путь в текстовом файле white155 Скриптовые языки администрирования Windows 4 16-04-2011 14:10
CMD/BAT - [решено] Изменение переменных в текстовом файле средствами bat men232 Скриптовые языки администрирования Windows 1 29-11-2010 03:30
Теория - Можно ли достать значения цены с графика, получив их в текстовом файле? evg64 Программирование и базы данных 1 26-10-2009 07:26
MySQL - Поиск несуществующего значения. DedAlex Программирование и базы данных 7 04-06-2008 15:13




 
Переход