Это немного сложно, потому что вы не хотите, чтобы процесс изменения цвета фона перехватывал ввод вашей консоли. Вы можете добавить параметр /NOBREAK к команде TIMEOUT, чтобы скрипт никогда не читал stdin, за исключением того, что он все еще может обрабатывать прерывание <CTRL-Break>
и спрашивать, хотите ли вы завершить сценарий. Пользователь может ответить Y
и завершить фоновый процесс, но это может сбить с толку, если основной процесс также имеет запущенный пакетный скрипт. Какой процесс получает вход?
Вы можете перенаправить stdin на nul для фонового процесса, но TIMEOUT завершится ошибкой, если ввод перенаправлен.
Я изменил ваш auto-change-text-color.bat, чтобы использовать задержку PING вместо TIMEOUT, что позволило перенаправить stdin на NUL. Я также поместил одну последнюю команду COLOR в конец, чтобы закончить с более удобочитаемой цветовой комбинацией.
@echo off
set NUM=0 1 2 3 4 5 6 7 8 9 A B C D E F
for %%x in (%NUM%) do (
for %%y in (%NUM%) do (
color %%x%%y
>nul ping localhost -n 2
)
)
color 07
Следующая команда используется для запуска скрипта в фоновом режиме с перенаправлением stdin на nul:
start "" /b cmd /c "auto-change-text-color.bat <nul"
Единственный странный побочный эффект заключается в том, что фоновый процесс все еще может получить <CTRL-Break>
и распечатывает сообщение « Terminate batch job (Y/N)?
, но сразу же продолжается, не дожидаясь ввода. Таким образом, вы можете безопасно запустить пакетный скрипт в основном процессе, выполнить <CTRL-Break>
и получить два сообщения Terminate, и нажмите Y или N, зная, что ответит только пакетный скрипт в вашем основном процессе (завершить или нет).
Используйте AT
или SCHTASKS
C:\Users\username>at /?
Команда AT предназначена для запуска команд и программ в указанное время
по определенным дням. Для использования команды AT необходимо, чтобы была
запущена служба расписаний.
AT [\\имя_компьютера] [ [ИД] [/DELETE] | /DELETE [/YES]]
AT [\\имя_компьютера] время [/INTERACTIVE]
[ /EVERY:день[,...] | /NEXT:день[,...]] "команда"
\\имя_компьютера Имя удаленного компьютера. Если этот параметр опущен,
используется локальный компьютер.
код Порядковый номер запланированной задачи.
/delete Отмена запланированной задачи. Если код задачи опущен,
отменяются все задачи, запланированные для указанного
компьютера.
/yes Отмена запроса на подтверждение при отмене всех
запланированных задач.
время Время запуска команды.
/interactive Разрешение взаимодействия задачи с пользователем,
работающим на компьютере во время запуска задачи.
/every:день[,...] Запуск задачи осуществляется по указанным дням недели или
месяца. Если дата опущена, используется текущий день
месяца.
/next:день[,...] Задача будет запущена в следующий указанный день недели
(например, в следующий четверг). Если дата опущена,
используется текущий день месяца.
"команда" Команда Windows NT или имя пакетного файла.
------------------------------------------------------------------------------------
C:\Users\username>SCHTASKS /?
SCHTASKS /параметр [аргументы]
Описание.
Позволяет администратору создавать, удалять, изменять и опрашивать
запланированные задачи в локальной или удаленной системе.
Параметры:
/Create Создание запланированной задачи.
/Delete Удаление запланированной задачи или задач.
/Query Вывод данных о всех запланированных задачах.
/Change Изменение свойств запланированной задачи.
/Run Выполнение запланированной задачи по требованию.
/End Остановка выполняющейся запланированной задачи.
/ShowSid Отображение идентификатора безопасности, соответствующего
имени запланированной задачи.
/? Вывод справки по использованию.
Examples:
SCHTASKS
SCHTASKS /?
SCHTASKS /Run /?
SCHTASKS /End /?
SCHTASKS /Create /?
SCHTASKS /Delete /?
SCHTASKS /Query /?
SCHTASKS /Change /?
SCHTASKS /ShowSid /?
Topic: Creating a batch file to run RDP and connect (Read 99168 times)
0 Members and 1 Guest are viewing this topic.
Arrakis
Hi, I am a complete novice with zero experience.
I have daily tasks at work which require me to RDP to servers to check logs etc and was hoping I could create a batch file to launch on startup to save myself a bit of time.
Any help would be greatly appreciated.
So far all I have done is copy scripts I have found online but I’m struggling to find something suitable for my needs in this instance. I have read some of the threads in this forum on similar requests but am baffled :/
Arrakis
So far I have got this far.
start /d “C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories” mstsc.exe
I’m such a n00b its almost embarrassing
foxidrive
I don’t RDP anywhere – what did you want to automate?
What procedure do you use to RDP?
Arrakis
Hi, did I not reply to your question above?
Ideally I want to automate logon to an exchange server and run services.msc or test-servicehealth. This check is one of my daily checks.
foxidrive
Arrakis
Not really sure what I need to add to make this work, there are no examples :/ I get further with what I’ve written already. I need to automate the launch – connection – fill password field – connect.
I dont know if this is even possible.
Thanks for the link though.
Arrakis
After further investigation I think a batch file maybe inappropriate for my needs, thoughts?
foxidrive
The link shows that you need a connection file, and that will allow you to connect to the remote server with few keystrokes.
You create/edit the connection file and write the batch file, call it R. BAT and put it in c:\Windows
Then press Windows + R, type R and press enter. You should be connected.
Как я прочитал, ссылка показывает, что с файлом подключения все, что вам нужно, это:
, где вы создаете server1.rdp на своем рабочем столе. Вы можете просто дважды щелкнуть файл RDP, если ассоциации работают.
Арракис
Я наткнулся на это в сети,
mstsc /v: “IP-АДРЕС ЗДЕСЬ” /w:640 /h:480
Что привело меня к тому, что я ввел свой пароль, есть идеи для другой строки, чтобы добавить пароль и несколько раз нажать «ОК»?
Арракис
Верно, мне просто нужна команда, чтобы заполнить поле пароля, и я там. Кто-нибудь поможет?
Кибертек
PowerShell может создать этот сценарий. Создаст временное соединение с целевой машиной.
set-location \\targetmachine\c$
Уильям Х. Дэвис
ИТ-аналитик
Кадетское командование армии США
клеркдон
Вы пробовали перейти к “cmd” и ввести “mstsc /?” Это даст вам все команды, которые удаленный рабочий стол будет использовать/требовать.
Я использую пакетные файлы так же, как вы делаете это с командой выбора, чтобы пройти через удаленные серверы
Никзуландер
РЕШЕНИЕ:
Лучший способ сделать это — открыть mstsc, ввести все данные о подключении, затем нажать «Сохранить как», сохранить на рабочий стол и все готово.
патио
«Каждый, кто идет к психиатру, должен проверить свою голову».
Команда WMIC
(Команда инструментария управления Windows) используется для получения сведений об оборудовании и системе, управлении процессами и их компонентами, а также
изменения настроек с использованием возможностей инструментария управления Windows ( W
индовы М
менеджмент I
инструменты или WMI).
Инструментарий управления Windows (WMI) — это набор программных средств, система управления производством с использованием сценариев, применяемых в среде Windows Script Host
(ранее – Windows Scripting Host ) или в командной строке с помощью утилиты WMIC. EXE
. Хост сценариев Windows или сокращенно WSH
– это компонент Microsoft Windows,
предназначенный для запуска сценариев на основе сценариев JScript и VBScript. Сценарии WSH обычно используются в тех случаях, когда требуется регистрация набора каких-либо действий,
требующих написания относительно сложного исходного кода, но часто встречающихся в повседневной практике администрирования, предпочитаемых цветовой гаммы WMIC
.
Технология WMI — это расширенная и адаптированная под Windows стандарта Web-Based Enterprise Management (WBEM), распространенного множества масштабов в качестве универсального внешнего наблюдения и управления ресурсами и компонентами, распространяемыми в среде предприятия с использованием объектно-ориентированных идеологий и протоколов HTML и XML. . В основе структуры данных в WBEM лежит общая информационная модель (CIM), реализующая объектно-ориентированный подход к представлению компонентов системы. Практически, WMI, основанный на CIM, является открытой унифицированной системой доступа к широкому спектру параметров системы, устройствам и приложениям, которые функционируют в ней.
Программные средства WMI строит по умолчанию и включает в себя возможные компоненты:
wmimgmt.msc
– подключение консоли MMC, позволяющей полностью управлять системой WMI на самом выбранном компьютере.
Winmgmt.exe
– консольная утилита управления WMI. Выполняется то действие, которое и консоль MMC wmimgmt.msc. Кроме того, в Windows 2000 является исполняемым файлом службы WMI в системе. Для запуска используется консоль с опцией /exe (winmgmt.exe /exe). Начиная с Windows XP, исполняемым файлом WMI является библиотека wmisvc.dll
, загружаемая с помощью хост-контроллера svchost.exe
(Generic Host Process for Win32 Services). В Windows 7-10 утилита winmgmt.exe
позволяет выполнить конфигурирование службы WMI как для группы SVChost под именем netsvcs
, так и для отдельной группы с именем Winmgmt
. В среде Windows 10 группировка служб, запускаемых с помощью svchost.exe
, практически не используется – большинству служб соответствует свой собственный процесс svchost.exe.
Wbemtest.exe
– графическая утилита для интерактивной работы с WMI. Удобна для тестирования классов и методов, просмотра свойств и т. п.
Wmic.exe
– консольная утилита для вызова объектов и методов WMI (WMI Console) – присутствует только в Windows XP и более поздних версиях Windows.
mofcomp.exe
– компилятор MOF-файлов. Служит для расширения репозитория WMI и тонких операций с библиотекой классов WMI, а также для обнаружения и исправления ошибок данных репозитория.
Основной каталог данных WMI при стандартной установке Windows – C:\Windows\System32\wbem
.
Формат командной строки:
Если параметры командной строки отсутствуют, то утилита wmic.exe
переходит в интерактивный режим, с отображением приглашения к вводу команд:
Подсказку по работе с утилитой wmic.exe
можно получить по команде:
wmic /?
– отобразить общую справку.
wmic /?:BRIEF
– отобразить краткую справку.
wmic /?:FULL
– отобразить полную стправку.
Содержание общей справки:
[глобальные параметры] <команда> Имеются следующие глобальные параметры: /NAMESPACE Путь к пространству имен, с которым оперирует псевдоним. /ROLE Путь к роли, содержащей определения псевдонимов. /NODE Серверы, с которыми будет работать псевдоним. /IMPLEVEL Уровень олицетворения для клиента /AUTHLEVEL Уровень проверки подлинности для клиента. /LOCALE Код языка, который должен использовать клиент. /PRIVILEGES Включает или выключает все привилегии. /TRACE Выводит отладочные данных в stderr. /RECORD Записывает все вводимые команды и их выходные данные. /INTERACTIVE Устанавливает или переустанавливает интерактивный режим. /FAILFAST Устанавливает или переустанавливает режим FailFast. /USER Имя пользователя для сеанса. /PASSWORD Пароль для входа в сеанс. /OUTPUT Задает режим перенаправления выходных данных. /APPEND Задает режим перенаправления выходных данных. /AGGREGATE Устанавливает или переустанавливает режим совместного вывода. /AUTHORITY Задает <тип_полномочий> для подключения. /?[:< BRIEF|FULL >] Сведения об использовании. Для получения дополнительных сведений о конкретном глобальном параметре введите: < имя_параметра > /? Для текущей роли доступны следующие псевдонимы: ALIAS - Доступ к псевдонимам, доступным на локальном компьютере BASEBOARD - Управление системной платой. BIOS - Управление BIOS. BOOTCONFIG - Управление конфигурацией загрузки. CDROM - Управление устройствами чтения компакт-дисков. COMPUTERSYSTEM - Управление компьютером. CPU - Управление ЦП. CSPRODUCT - Сведения о системе из SMBIOS. DATAFILE - Управление файлами данных. DCOMAPP - Управление приложениями DCOM. DESKTOP - Управление рабочим столом. DESKTOPMONITOR - Управление системой мониторинга рабочего стола. DEVICEMEMORYADDRESS - Управление адресами памяти устройства. DISKDRIVE - Управление физическими дисками. DISKQUOTA - Использование дискового пространства для томов NTFS. DMACHANNEL - Управление каналами прямого доступа к памяти (DMA). ENVIRONMENT - Управление настройками системной среды. FSDIR - Управление оглавлением файловой системы. GROUP - Управление учетными записями групп. IDECONTROLLER - Управление IDE-контроллерами. IRQ - Управление линиями запросов прерывания. JOB - Доступ к заданиям, запланированным с помощью службы расписания. LOADORDER - Управление системными службами, задающими зависимости при выполнении. LOGICALDISK - Управление локальными запоминающими устройствами. LOGON - Сеансы входа в систему. MEMCACHE - Управление кэш-памятью. MEMORYCHIP - Информация о микросхемах памяти. MEMPHYSICAL - Управление физической памятью компьютерной системы. NETCLIENT - Управление сетевыми клиентами. NETLOGIN - Управление данными входа в систему конкретных пользователей. NETPROTOCOL - Управление протоколами (и их сетевыми характеристиками). NETUSE - Управление активными сетевыми соединениями. NIC - Управление адаптерами сетевого интерфейса. NICCONFIG - Управление сетевыми адаптерами. NTDOMAIN - Управление доменами NT. NTEVENT - Записи в журнале событий NT. NTEVENTLOG - Управление файлом журнала событий NT. ONBOARDDEVICE - Управление основными встроенными адаптерами на системной плате. OS - Управление установленными операционными системами. PAGEFILE - Управления файлом подкачки виртуальной памяти. PAGEFILESET - Управление параметрами файла подкачки. PARTITION - Управление областями с разделами физического диска. PORT - Управление портами ввода-вывода. PORTCONNECTOR - Управление физическими портами подключения. PRINTER - Управление печатающими устройствами. PRINTERCONFIG - Управление конфигурацией печатающих устройств. PRINTJOB - Управление заданиями печати. PROCESS - Управление процессами. PRODUCT - Управление задачами пакета установки. QFE - Исправление QFE (Quick Fix Engineering). QUOTASETTING - Настройка данных о дисковых квотах для тома. RDACCOUNT - Управление разрешениями для подключений к удаленному рабочему столу. RDNIC - Управление подключением к удаленному рабочему столу на определенном сетевом адаптере. RDPERMISSIONS - Разрешения для определенного подключения к удаленному рабочему столу. RDTOGGLE - Удаленное включение и отключение прослушивателя для удаленного рабочего стола. RECOVEROS - Данные, которые будут собраны из памяти при сбое операционной системы. REGISTRY - Управление системным реестром компьютера. SCSICONTROLLER - Управление SCSI-контроллерами. SERVER - Управление сведениями о сервере. SERVICE - Управление служебными приложениями. SHADOWCOPY - Управление теневыми копиями. SHADOWSTORAGE - Управление областью хранения теневых копий. SHARE - Управление общими ресурсами. SOFTWAREELEMENT - Управление установленными в системе компонентами программного продукта. SOFTWAREFEATURE - Управление подмножествами программных продуктов SoftwareElement. SOUNDDEV - Управление звуковым устройством. STARTUP - Управление командами, запускающимися автоматически при входе пользователей в систему. SYSACCOUNT - Управление системной учетной записью. SYSDRIVER - Управление системным драйвером базовой службы. SYSTEMENCLOSURE - Управление физическим системным корпусом. SYSTEMSLOT - Управление точками физических соединений, включая порты, гнезда и периферийные устройства, а также специальными точками соединения. TAPEDRIVE - Управление ленточными накопителями. TEMPERATURE - Управление датчиком температуры (электронным термометром). TIMEZONE - Управление данными о часовых поясах. UPS - Управление источниками бесперебойного питания (ИБП). USERACCOUNT - Управление учетными записями пользователей. VOLTAGE - Управление данными датчика напряжения (электронного вольтметра). VOLUME - Управление локальными томами хранилища. VOLUMEQUOTASETTING - Сопоставление дисковых квот конкретному тому. VOLUMEUSERQUOTA - Управление квотами для индивидуальных томов хранилищ. WMISET - Управление параметрами работы службы WMI. Для получения дополнительных сведений о конкретном псевдониме введите: < псевдоним > /? CLASS - переходит к полной схеме WMI. PATH - переходит к полным путям к объектам WMI. CONTEXT - выводит состояние всех глобальных параметров. QUIT/EXIT - выполняет выход из программы. Для получения дополнительных сведений о командах CLASS/PATH/CONTEXT введите: (CLASS | PATH | CONTEXT) /?
[глобальные параметры] < команда > Имеются следующие глобальные параметры: NAMESPACE - Путь к пространству имен, по которому будет работать псевдоним. Пространства имен всегда относительны, т.е. если пространство не начинается с \\, то оно отсчитывается относительно текущего. Использование: /NAMESPACE:< пространство_имен > ROLE - Путь к роли, содержащей определения псевдонимов, предназначенных для прикладного сеанса. Использование: /ROLE:< пространство имен > ЗАМЕЧАНИЕ. Роли по сути являются пространствами имен и работать с ними следует соответственно, т.е. правильно указывать относительные пути (по умолчанию используется пространство имен \\root\cli). NODE - задает серверы, с которыми будет работать псевдоним. Использование: /NODE:< список_идентификаторов_компьютеров > ПРИМЕЧАНИЕ. < список_идентификаторов_компьютеров > ::= < @имя_файла | ид_комп > | < имя_файла | ид_комп > < ,список_идентификаторов_компьютеров > IMPLEVEL - определяет уровень, на котором командная строка выполняет олицетворение. По умолчанию используется Impersonate. Использование: /IMPLEVEL:< уровень_олицетворения >[/AUTHORITY:< тип_полномочий >] Существуют следующие уровни олицетворения: Impersonation Level ------------------ Anonymous Identify Impersonate Delegate Примечание. Параметр /AUTHORITY используется для указания типа полномочий. AUTHLEVEL - задает уровень, на котором командная строка выполняет проверку подлинности. По умолчанию используется Pktprivacy. Использование: /AUTHLEVEL:< уровень_проверки_подлинности > Существуют следующие уровни проверки подлинности: Authlevel --------- Default None Connect Call Pkt Pktintegrity Pktprivacy LOCALE - задает код языка, который должна использовать командная строка. Использование: /LOCALE:< код_языкового_стандарта > ПРИМЕЧАНИЕ. Параметр LOCALE имеет вид MS_XXX. Значение XXX равно 409 для английского языка и 419 для русского. PRIVILEGES - включает или выключает все привилегии. Использование: /PRIVILEGES:< параметр > ПРИМЕЧАНИЕ. Разрешенными значениями параметра являются ENABLE и DISABLE. TRACE - Выбор режима копирования отладочных данных в поток stderr в ходе обработки запросов. Использование: /TRACE:< параметр > ПРИМЕЧАНИЕ. Разрешенными значениями параметра являются ON и OFF. RECORD -- записывает все введенные команды и вывод WMIC в XML-файл. Использование: /RECORD:< путь к файлу > INTERACTIVE - устанавливает или переустанавливает интерактивный режим. Использование: /INTERACTIVE:< параметр > ПРИМЕЧАНИЕ. Разрешенными значениями параметра являются ON и OFF. FAILFAST - Устанавливает или переустанавливает режим FailFast. Использование: /FAILFAST:< параметр > ПРИМЕЧАНИЕ. Разрешенными значениями параметра являются ON и OFF. OUTPUT - задает режим перенаправления выходных данных. Использование: /OUTPUT:< спецификация вывода > ПРИМЕЧАНИЕ. < тип_вывода > ::= (STDOUT | CLIPBOARD | < имя_файла >) STDOUT - выходные данные перенаправляются в поток STDOUT. CLIPBOARD - выходные данные копируются в буфер обмена. < имя_файла > - выходные данные записываются в указанный файл. APPEND - задает режим перенаправления выходных данных. Использование: /APPEND:< спецификация вывода > ПРИМЕЧАНИЕ. < тип_вывода > ::= (STDOUT | CLIPBOARD | < имя_файла >) STDOUT - выходные данные перенаправляются в поток STDOUT. CLIPBOARD - выходные данные копируются в буфер обмена. < имя_файла > - выходные данные добавляются в указанный файл. USER - задает имя пользователя для сеанса. Использование: /USER:< userid > ПРИМЕЧАНИЕ. Имя указывается в формате < домен >\< пользователь >. AGGREGATE - задает режим вывода результатов. Использование: /AGGREGATE:<параметр>. Примечание. Разрешенными значениями параметра являются ON и OFF. PASSWORD --задает пароль для входа в сеанс. Использование: /PASSWORD:< пароль > AUTHORITY - задает < тип_полномочий > для подключения. Использование: /AUTHORITY:< тип_полномочий > /? - выводит описание и синтаксис справочных команд. Использование: /?:[< тип справки >] ПРИМЕЧАНИЕ. Разрешенными значениями для вида справки являются BRIEF (краткая) и FULL (полная). ПРИМЕЧАНИЕ. Если значение параметра содержит специальные символы, например '-' или '/', его следует заключить в двойные кавычки. Для текущей роли доступны следующие псевдонимы: ALIAS - Доступ к псевдонимам, доступным на локальном компьютере BASEBOARD - Управление системной платой. BIOS - Управление BIOS. BOOTCONFIG - Управление конфигурацией загрузки. CDROM - Управление устройствами чтения компакт-дисков. COMPUTERSYSTEM - Управление компьютером. CPU - Управление ЦП. CSPRODUCT - Сведения о системе из SMBIOS. DATAFILE - Управление файлами данных. DCOMAPP - Управление приложениями DCOM. DESKTOP - Управление рабочим столом. DESKTOPMONITOR - Управление системой мониторинга рабочего стола. DEVICEMEMORYADDRESS - Управление адресами памяти устройства. DISKDRIVE - Управление физическими дисками. DISKQUOTA - Использование дискового пространства для томов NTFS. DMACHANNEL - Управление каналами прямого доступа к памяти (DMA). ENVIRONMENT - Управление настройками системной среды. FSDIR - Управление оглавлением файловой системы. GROUP - Управление учетными записями групп. IDECONTROLLER - Управление IDE-контроллерами. IRQ - Управление линиями запросов прерывания. JOB - Доступ к заданиям, запланированным с помощью службы расписания. LOADORDER - Управление системными службами, задающими зависимости при выполнении. LOGICALDISK - Управление локальными запоминающими устройствами. LOGON - Сеансы входа в систему. MEMCACHE - Управление кэш-памятью. MEMORYCHIP - Информация о микросхемах памяти. MEMPHYSICAL - Управление физической памятью компьютерной системы. NETCLIENT - Управление сетевыми клиентами. NETLOGIN - Управление данными входа в систему конкретных пользователей. NETPROTOCOL - Управление протоколами (и их сетевыми характеристиками). NETUSE - Управление активными сетевыми соединениями. NIC - Управление адаптерами сетевого интерфейса. NICCONFIG - Управление сетевыми адаптерами. NTDOMAIN - Управление доменами NT. NTEVENT - Записи в журнале событий NT. NTEVENTLOG - Управление файлом журнала событий NT. ONBOARDDEVICE - Управление основными встроенными адаптерами на системной плате. OS - Управление установленными операционными системами. PAGEFILE - Управления файлом подкачки виртуальной памяти. PAGEFILESET - Управление параметрами файла подкачки. PARTITION - Управление областями с разделами физического диска. PORT - Управление портами ввода-вывода. PORTCONNECTOR - Управление физическими портами подключения. PRINTER - Управление печатающими устройствами. PRINTERCONFIG - Управление конфигурацией печатающих устройств. PRINTJOB - Управление заданиями печати. PROCESS - Управление процессами. PRODUCT - Управление задачами пакета установки. QFE - Исправление QFE Quick Fix Engineering. QUOTASETTING - Настройка данных о дисковых квотах для тома. RDACCOUNT - Управление разрешениями для подключений к удаленному рабочему столу. RDNIC - Управление подключением к удаленному рабочему столу на определенном сетевом адаптере. RDPERMISSIONS - Разрешения для определенного подключения к удаленному рабочему столу. RDTOGGLE - Удаленное включение и отключение прослушивателя для удаленного рабочего стола. RECOVEROS - Данные, которые будут собраны из памяти при сбое операционной системы. REGISTRY - Управление системным реестром компьютера. SCSICONTROLLER - Управление SCSI-контроллерами. SERVER - Управление сведениями о сервере. SERVICE - Управление служебными приложениями. SHADOWCOPY - Управление теневыми копиями. SHADOWSTORAGE - Управление областью хранения теневых копий. SHARE - Управление общими ресурсами. SOFTWAREELEMENT - Управление установленными в системе компонентами программного продукта. SOFTWAREFEATURE - Управление подмножествами программных продуктов SoftwareElement. SOUNDDEV - Управление звуковым устройством. STARTUP - Управление командами, запускающимися автоматически при входе пользователей в систему. SYSACCOUNT - Управление системной учетной записью. SYSDRIVER - Управление системным драйвером базовой службы. SYSTEMENCLOSURE - Управление физическим системным корпусом. SYSTEMSLOT - Управление точками физических соединений, включая порты, гнезда и периферийные устройства, а также специальными точками соединения. TAPEDRIVE - Управление ленточными накопителями. TEMPERATURE - Управление датчиком температуры (электронным термометром). TIMEZONE - Управление данными о часовых поясах. UPS - Управление источниками бесперебойного питания (ИБП). USERACCOUNT - Управление учетными записями пользователей. VOLTAGE - Управление данными датчика напряжения (электронного вольтметра). VOLUME - Управление локальными томами хранилища. VOLUMEQUOTASETTING - Сопоставление дисковых квот конкретному тому. VOLUMEUSERQUOTA - Управление квотами для индивидуальных томов хранилищ. WMISET - Управление параметрами работы службы WMI. Для получения дополнительных сведений о конкретном псевдониме введите: < псевдоним > /? CLASS - переходит к полной схеме WMI. PATH - переходит к полным путям к объектам WMI. CONTEXT - выводит состояние всех глобальных параметров. QUIT/EXIT - выполняет выход из программы. Для получения дополнительных сведений о командах CLASS/PATH/CONTEXT введите: (CLASS | PATH | CONTEXT) /?
Класс (Class)
– Класс – это определение объекта WMI. Например, класс процесс (process) определяет все характеристики любого процесса, но не ссылается на какой-либо конкретный процесс.
Объект (Object)
– Иногда называется экземпляром класса (instance); Это конкретный набор данных WMI, определенное проявление класса.
Действие (Action)
– Также называется методом (method). Действие – это доступная для выполнения функция класса или объекта WMI, некоторая операция, которую мы можете заставить выполнить класс или объект. Например, завершение процесса объектом Process с использованием метода delete, как это рассматривается ниже.
Свойства
– параметры объекта.
Путь объекта
– путь WMI для использования при обращении к экземпляру или классу.
Псевдоним
– определение классов WMI, применяемое в WMIC. Псевдонимы упрощают обращение к классам и свойствам. Они также предоставляют действия, облегчающие работу с классами. Псевдонимы могут включать средства для работы с классами на удаленном компьютере, а также на нескольких компьютерах.
Утилита WMIC создана для удобства применения WMI непосредственно из командной строки, поэтому наиболее используемые классы WMI доступны под заранее определенными псевдонимами (ALIAS). Также, имеется возможность самостоятельного определения псевдонимов для тех классов, для которых это еще не сделано, или добавить новые псевдонимы для тех классов WMI, которые уже их имеют.
Утилита WMIC предоставляет три основных параметра для управления отображением данных:
/OUTPUT
– вывод во внешний файл.
/FORMAT
– позволяет форматировать информацию.
/TRANSLATE
– настройка вывода специальных символов.
Кроме вывода в файл, возможен вывод в буфер обмена, если задан параметр /OUTPUT:CLIPBOARD
.
В качестве дополнительного средства протоколирования вместо параметра /OUTPUT
можно использовать параметр /RECORD:< имя файла >
. Для отмены протоколирования в интерактивном режиме используется параметр /RECORD:””
Форматы выводимых данных:
CSV
– вывод данных в одну строку, с разделителем в виде запятой.
HFORM
– информация отображается в виде списка, оформленного в HTML-формате. Отображается две колонки – название объекта и его значение.
HTABLE
– формат вывода данных в виде HTML таблицы.
LIST
– вывод свойства и его значения происходит в отдельной строке.
MOF
– собственно, информация преобразуется в формат MOF.
RAWXML
– вывод данных в XML файл.
TABLE
– табличный формат вывода данных.
VALUE
– аналогично значению LIST.
XML
– вывода данных в XML файл, но с дополнительной информацией.
Параметр /TRANSLATE
используется совместно с оператором GET
в тех случаях, когда есть
необходимость вывода символов, стандартно используемых для форматирования текста или разделения полей. В среде WMIC поддерживаются таблицы BasicXml
и NoComma
Необходимо учитывать тот факт, что формат вывода данных и их вид будет зависеть от порядка следования параметров /TRANSLATE и /FORMAT:
– Если /TRANSLATE следует раньше чем /FORMAT, то сначала выполняется преобразование, а затем форматирование выводимых данных.
– Если /FORMAT идет раньше /TRANSLATE, то сначала выполняется форматирование, а затем – преобразование.
Примеры использования WMIC для работы с процессами.
Список псевдонимов, доступный на локальном компьютере можно получить с помощью команды:
wmic alias list brief
Для класса Win32_Process
предусмотрен псевдоним Process
. Соответственно, для получения подсказки можно воспользоваться командой:
wmic process /?
Отображаемая справка для Windows 10:
PROCESS - Управление процессами. СОВЕТ. B NF при работе с псевдонимом. (< псевдоним > [объект WMI] | < псевдоним > [< путь_WHERE >] | [< псевдоним >] < путь_WHERE >) [< предложение_команды >]. Использование: PROCESS ASSOC [< указатель_формата >] PROCESS CALL < имя_метода > [< список_фактических_параметров >] PROCESS CREATE < список_значений > PROCESS DELETE PROCESS GET [< список_свойств >] [< параметры_GET >] PROCESS LIST [< формат_LIST >] [< параметры_LIST >]
Для получения списка процессов используется параметр LIST
. Для получения подсказки по
форматам и параметрам LIST можно использовать команду:
wmic process list /?
Для получения списка процессов, отображаемого в кратком формате, используется команда:
wmic process list brief
Пример выводимой информации:
HandleCount Name Priority ProcessId ThreadCount WorkingSetSize 0 System Idle Process 0 0 4 4096 1067 System 8 4 124 10711040 49 smss.exe 11 344 2 1163264 232 csrss.exe 13 456 10 3756032 85 wininit.exe 13 524 2 4734976 198 winlogon.exe 13 580 3 9420800 235 services.exe 9 648 6 6590464 976 lsass.exe 9 656 7 14516224 547 svchost.exe 8 764 22 17735680 520 svchost.exe 8 824 9 9007104 . .
Для вывода сведений о процессах в html-файл:
wmic /output:c:\proclist.htm process list /format:htable
Параметр /output
задает имя файла с результатами, а параметр /format
– формат выводимых данных.
wmic /output:proclist1.htm process list /format:hform
– вывод результатов в HTML-файл в виде списка процессов с двумя колонками из названия свойства и его значения.
Для получения списка процессов на удаленной системе используется команда:
wmic /node:”192.168.1.132” process list brief
Если имена компьютеров содержат специальные символы, то они должны заключаться в двойные кавычки:
wmic /node:”server-01” process list brief
wmic /node:”server-01”,”192.168.0.1” process list brief
При обработке списка компьютеров, взятого из текстового файла, какие-либо из перечисленных компьютеров могут быть выключены, поэтому, для сокращения времени выполнения команды, желательно использовать параметр /FAIFAST:ON
, который позволит исключить применение команды по отношению к узлам, не отвечающим на эхо-запрос (не отвечающим на ping):
Для опроса состояния конкретного процесса, например браузера Chrome можно использовать команду:
wmic process where name=”chrome.exe” list status
Для принудительного завершения процесса используется команда:
wmic process where name=”chrome.exe” delete
wmic process where name=”chrome.exe” call terminate
Для запуска программы на локальном компьютере:
wmic process call create “C:\Program Files (x86)\Google\Chrome\Application\chrome.exe”
Для запуска программ на удаленных компьютерах используется параметр /node
, рассмотренный выше и полные пути исполняемых файлов относительно удаленной системы.
Примеры использования WMIC для получения сведений о компонентах системы.
WMIC OS LIST BRIEF
– отобразить краткие сведения о системе.
wmic OS GET Name
– отобразить версию ОС Windows и устройство загрузки.
WMIC OS GET csname,bootdevice,localdatetime
– отобразить имя компьютера, устройство загрузки, локальные дату и время.
WMIC OS GET locale, oslanguage, codeset
– отобразить данные локализации Windows
WMIC OS GET osarchitecture /value
– отобразить архитектуру системы (разрядность Windows, например – значение OSArchitecture=64-bit
для 64-разрядной системы)
WMIC QFE list brief
– отобразить список обновлений Quick Fix Engineering (QFE) Windows.
WMIC QFE get hotfixid,description,installedOn
– отобразить список обновлений Windows, включающий название, краткое описание и дату установки.
WMIC DISKDRIVE get name,size,model
– отобразить список физических дисков, содержащих название модели, имя в системе и размер.
WMIC PARTITION list brief
– отобразить список всех разделов на всех дисках.
WMIC LOGICALDISK list brief
– отобразить список логических дисков.
WMIC LOGICALDISK where drivetype=4 get FreeSpace,ProviderName
– отобразить свободное место и путь для сетевых дисков (drivetype=4)
WMIC LOGICALDISK where drivetype!=4 get freespace, description
– отобразить свободное место и описание для локальных дисков, включая CD/DVD и съемные устройства хранения данных.
WMIC LOGICALDISK where description=’Local Fixed Disk’ get deviceid, volumename
– отобразить идентификаторы (буквы дисков) и метки томов для всех локальных логических дисков.
WMIC SERVICE where state=”running” GET caption,name,state /format:list
– отобразить список, включающий отображаемые имена, короткие имена и статус работающих системных служб.
WMIC SERVICE where state=”Stopped” GET caption,name,state /format:list
– отобразить список, включающий отображаемые имена, короткие имена и статус остановленных системных служб.
WMIC SERVICE where name=’WinRM’ CALL STARTSERVICE
– запустить службу удаленного управления Windows (WinRM)
WMIC SERVICE where name=’WinRM’ GET name,state
– проверить состояние
службы WinRM.
WMIC PRINTER LIST STATUS
– отобразить список принтеров и их состояние.
WMIC BASEBOARD list brief
– отобразить общую информацию о материнской плате компьютера.
wmic bios get Manufacturer
– отобразить сведения о производителе BIOS.
wmic bios get smbiosbiosversion
– отобразить версию BIOS.
wmic bios get Description
– отобразить описание производителя BIOS.
WMIC MEMORYCHIP list brief
– отобразить сведения о модулях памяти компьютера.
WMIC MEMORYCHIP GET Devicelocator,Capacity
– отобразить сведения о размещении и емкости модулей памяти DIMM.
Пример командного файла, который отображает основные сведения об оборудовании и операционной системе компьютера:
wmic os get csname
wmic baseboard get Product
wmic bios get manufacturer,Description
wmic CPU get name
WMIC MEMORYCHIP GET Devicelocator,Capacity
WMIC DISKDRIVE get name,size,model
wmic os get Caption,BuildNumber
WMIC LOGICALDISK get caption,Freespace,Size
Весь список команд CMD Windows