Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
British
Зарегистрирован: 27.07.2004 Сообщения: 28
|
Добавлено: Сб Окт 15 2005 13:47 Заголовок сообщения: DOS: Присвоить переменной результат выполнения команды |
|
|
Добрый день!
Кто помнит/знает, как в ДОСе присвоить результат выполнения какой-нибудь команды? Желательно и по параметрам, если выдается несколько.
Аналог в юниксах:
set `date`
somevar=$1
echo $somevar
А вообще, зачем надо..
Нужно прочитать значение ключа реестра и загнать его в переменную для дальнейшего использования.
Для этого использую утилитки reg.exe и reg2.exe, но они выдают не только значение ключа, но и его тип и всякую служебную инфу.
Хочу понять как это делать с помощью инструментов DOS
Как сделать с WSH - представляю _________________ British |
|
Вернуться к началу |
|
|
4u3u
Зарегистрирован: 24.01.2003 Сообщения: 997 Откуда: Moscow
|
Добавлено: Сб Окт 15 2005 14:08 Заголовок сообщения: |
|
|
для манипуляций со строками используется команда for.
for /?
Код: | @echo off
setlocal
::Путь к ключу и его имя и команда поиска
set regkey=HKLM\Software\Microsoft\Windows\CurrentVersion
set regvalue=ProgramFilesDir
set query=reg query %regkey% /v %regvalue%
:: Обрати внимание, после "delims=" стоит <Tab>.
:: Это разделитель элементов в строке.
for /f "skip=4 tokens=1,2* delims= " %%i in ('%query%') do (
set key=%%i
set type=%%j
set value=%%k
)
echo key: %key%
echo type: %type%
echo value: %value% |
|
|
Вернуться к началу |
|
|
British
Зарегистрирован: 27.07.2004 Сообщения: 28
|
Добавлено: Сб Окт 15 2005 14:26 Заголовок сообщения: |
|
|
Супер! То, что надо. Спасибо. _________________ British |
|
Вернуться к началу |
|
|
|