CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
-
MSI
CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
Мне необходимо что-то подобное:
%переменная% := (результат команды hostname), чтобы можно было использовать значение переменной дальше в скрипте...
Сейчас на ум приходит только hostname > file.ext , с последущим вычитыванием имени компьютера...
%переменная% := (результат команды hostname), чтобы можно было использовать значение переменной дальше в скрипте...
Сейчас на ум приходит только hostname > file.ext , с последущим вычитыванием имени компьютера...
-
MSI
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
Ага. Я брал поновее версию. Но ни моя, ни Ваша без устройства работать не хотят
.
В предыдущем варианте я что-то перебдел. Попробуйте так:
Код:
или так:
Код:
.В предыдущем варианте я что-то перебдел. Попробуйте так:
Код:
Код: Выделить всё
@echo off
for /f "usebackq tokens=2" %%i in (
`2^>^&1 "fastboot.exe" oem get_build_version ^| find.exe /i "^(bootloader^)"`
) do set sBootLoader=%%i
if defined sBootLoader echo [%sBootLoader%]или так:
Код:
Код: Выделить всё
@echo off
for /f "usebackq tokens=2" %%i in (
`2^>^&1 "fastboot.exe" oem get_build_version ^| find.exe /i "(bootloader)"`
) do set sBootLoader=%%i
if defined sBootLoader echo [%sBootLoader%]-
MSI
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
alpap, спасибо, ясно.
-
MSI
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
Цитата MSI:
А все-таки, можно ли в переменную "заталкивать" результат выполнения команды?
Код:
А все-таки, можно ли в переменную "заталкивать" результат выполнения команды?
Код:
Код: Выделить всё
@Echo Off
SetLocal EnableExtensions EnableDelayedExpansion
For /F "Delims=" %%I In ('Hostname') Do Set V=%%~I
Echo !V!-
Unter
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
Спасибо всем кто пытался разобраться в моей "компетентности". Я нашел решение, возможно временное, но рабочее. Оно вытекает из логики запуска данного приложения. Запуск происходит EXE файлом небольшого размера, который делает первичные проверки и настройки и запускает рядом лежащий файл, который на самом деле является основным исполняемым модулем и прекрасно запускается через start. Видимо стартовый экзешник зачем то сканирует состояние USB устройств и при этом либо закрывается(пока не проверял), либо меняет свое состояние и скрипт начинает считать, что программа завершила работу, хотя основной модуль находится в памяти. Эх если бы это разработчикам донести.
-
MSI
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
Wolf_46, А если так?
Код:
Оказывается, символ '=' тоже надо экранировать...
[spoiler]Код: [/spoiler]
выводит
Код:
Код:
Код: Выделить всё
setlocal ENABLEDELAYEDEXPANSION
FOR /F "usebackq delims=" %%a IN (`wmic path Win32_NetworkAdapter where NetConnectionStatus^="2" get NetConnectionID ^| find "одключ"`) DO (set result=%%a)
echo %result%Оказывается, символ '=' тоже надо экранировать...
[spoiler]Код: [/spoiler]
Код: Выделить всё
FOR /F "usebackq delims=" %%a IN (`echo =4=4=`) DO (set result=%%a )
echo result:%result%выводит
Код:
Код: Выделить всё
result:4 4-
Petya V4sechkin
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
%COMPUTERNAME% - стандартная переменная.
-
MSI
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
Petya V4sechkin, благодарю с переменной %COMPUTERNAME% результат достигнут.
Сразу проверить как-то не решился - результаты выполнения hostname и set computername несколько разнятся - это и смутило...
А все-таки, можно ли в переменную "заталкивать" результат выполнения команды?
Сразу проверить как-то не решился - результаты выполнения hostname и set computername несколько разнятся - это и смутило...
А все-таки, можно ли в переменную "заталкивать" результат выполнения команды?
-
Petya V4sechkin
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
Цитата MSI:
А все-таки, можно ли в переменную "заталкивать" результат выполнения команды?
Код:
А все-таки, можно ли в переменную "заталкивать" результат выполнения команды?
Код:
Код: Выделить всё
@Echo Off
SetLocal EnableExtensions EnableDelayedExpansion
For /F "Delims=" %%I In ('Hostname') Do Set V=%%~I
Echo !V!-
MSI
Re: CMD/BAT - [решено] Как записать в переменную результат выполнения команды?
Petya V4sechkin, Благодарю!
Если можно, хочу уточнить в чем разница между Echo !V! и Echo %V% ?
Если можно, хочу уточнить в чем разница между Echo !V! и Echo %V% ?