1

Я только начал работать с WindowsScripting и хотел бы помочь разобраться, как написать скрипт, который проверял бы модель компьютера и сохранял результат в переменной в файле Bat.

В конечном итоге я пытаюсь автоматизировать проверку модели компьютера и загрузить правильный файл BIOS.

Вот что у меня так далеко.

start "" wmic computersystem get model > model.txt
if model == X
  start "" %windir%\explorer.exe "download url"
elseif model == Y
  start "" %windir%\explorer.exe "download url"
elseif model == Z
  start "" %windir%\explorer.exe "download url"

Любая помощь приветствуется, так как я новичок во всем этом.

1 ответ1

1

Как я могу установить результат следующей команды в качестве переменной с именем model?

wmic computersystem get model

Вывод этого в моей системе:

Model
VPCF22L1E

Обратите внимание на лишнюю пустую строку. Я использовал VPCF22L1E для тестирования командного файла.

Используйте следующий пакетный файл (test.cmd):

@echo off
setlocal enableDelayedExpansion
for /f "usebackq skip=1" %%i in (`wmic computersystem get model`) do (
  set model=%%i
  goto :done
  )
:done
if [%model%]==[VPCF22L1E] start "" "%ProgramFiles%\Internet Explorer\iexplore.exe" "download url for VPCF22L1E"
if [%model%]==[Y] start "" "%ProgramFiles%\Internet Explorer\iexplore.exe" "download url for Y"
if [%model%]==[Z] start "" "%ProgramFiles%\Internet Explorer\iexplore.exe" "download url for Z"
endlocal

Заметки:

  • skip=1 используется для пропуска строки заголовка wmic .
  • goto :done - использовать для пропуска лишней пустой строки wmic .
  • Отредактируйте строки if соответствующим образом.

Дальнейшее чтение

  • Индекс AZ командной строки Windows CMD - Отличный справочник по всем вопросам, связанным с командной строкой Windows.
  • for /f - Циклическая команда против результатов другой команды.
  • if - Условно выполнить команду.
  • set - отображать, устанавливать или удалять переменные окружения CMD. Изменения, сделанные с помощью SET, будут сохраняться только в течение текущего сеанса CMD.
  • start - запустить программу, команду или пакетный скрипт (открывается в новом окне).
  • wmic - команда инструментария управления Windows.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .