- Службы Windows и cmd
- Как открыть «Службы» в Windows 7
- Запуск оснастки «Службы» в Windows 7
- Способ 1: Окно «Выполнить»
- Способ 2: «Диспетчер задач»
- Способ 3: Меню «Пуск»
- Способ 4: Командная строка
- Способ 5: Панель управления
- Способ 6: Системная папка Windows
- Устранение проблем с запуском «Служб»
- Get-Service: проверка состояния служб Windows в PowerShell
Службы Windows и cmd
Как в командном файле получить список служб Windows? Как узнать, установлена ли определённая служба? Как проверить её состояние? Как её перезапустить?
Получить ответы на эти важные вопросы помогут команды SC и NET.
Для получения списка служб используется команда:
Она перечисляет службы, выводя для каждой следующую информацию:
Важно, что язык вывода может быть разным (зависит от языковой версии Windows, региональных настроек), т.е. при написании командного файла необходимо учитывать, что вывод для той же службы может быть и таким:
Проверить наличие определённой службы можно поиском, например:
sc query type= service | findstr /i «wuauserv»
Если служба существует, вывод будет содержать строчку, а код возврата будет 0.
Если такой службы нет, вывод будет пустым, а код возврата 1.
Важно! В качестве строки поиска здесь используется внутреннее имя службы, которое не зависит от языковых настроек (DISPLAY_NAME зависит).
Для проверки конфигурации и статуса можно использовать команду SC QUERY , команда работает с внутренними именами, поэтому для проверки службы Планировщик задач можно написать SC QUERY schedule , и это будет работать везде. Проверить, запущена ли служба, можно по наличию строки RUNNING или STOPPED:
Команда NET START перечисляет все запущенные службы по одной на строчку, что делает работу с ней простой, например, проверить, что служба запущена, можно командой NET START | find «Планировщик заданий». Но необходимо учитывать, что эта команда работает с пользовательскими именами (Display Name) служб и приведённая команда не сработает в англоязычных региональных настройках.
Как открыть «Службы» в Windows 7
«Службы» — стандартное приложение Windows, которое есть в том числе и в «семерке». Оно необходимо для управления различными службами, запущенными или остановленными в системе, позволяя переключать их состояние, задавать параметры запуска, настраивать их восстановление после сбоев и работать с другими сопутствующими параметрами. О методах открытия этой оснастки мы расскажем в статье далее.
Запуск оснастки «Службы» в Windows 7
Для запуска этого компонента в Виндовс предусмотрено сразу несколько способов, и мы расскажем наиболее популярные из них. Кроме того, в статье будут упомянуты варианты решения различных проблем, связанных с попытками запуска «Служб».
Способ 1: Окно «Выполнить»
Через окно «Выполнить» можно открывать разнообразные директории и системные приложения, вводя в специальное поле адреса или кодовые названия программ. Это один из самых быстрых и удобных вариантов запуска «Служб» при условии, что пользователь запомнит, как эта оснастка именуется в Windows.
- Нажмите сочетание клавиш Win + R.
- В открывшееся окошко впишите команду services.msc и нажмите Enter либо «ОК».
Приложение «Службы» будет запущено.
Способ 2: «Диспетчер задач»
Через «Диспетчер задач» можно не только смотреть запущенные процессы, но и выполнять некоторые другие действия, среди которых есть нужное нам.
- Откройте любым удобным образом «Диспетчер задач». Для этого можно нажать комбинацию клавиш Ctrl + Shift + Esc или, например, кликнуть правой кнопкой мыши по панели задач, выбрав необходимый пункт из контекстного меню.
- Переключитесь на вкладку «Службы», а затем нажмите на кнопку с этим же названием.
Способ 3: Меню «Пуск»
Через поисковое поле «Пуска» также не составит труда отыскать «Службы», просто начав набирать их название и кликнув ЛКМ по совпадению.
Способ 4: Командная строка
Этот вариант подразумевает запуск «Служб» во время активной консоли. В остальных ситуациях открывать сперва ее, а затем сами «Службы» не имеет смысла — вы просто выполняете лишние действия. Тем не менее кому-то именно такой метод запуска будет казаться удобнее остальных (например, когда ярлык «Командной строки» вынесен на рабочий стол или она в принципе активно используется юзером). Для запуска в развернутой «Командной строке» напишите команду services.msc и нажмите Enter.
Способ 5: Панель управления
Данный вариант, как и предыдущий, актуален далеко не для всех, а только при работе с «Панелью управления», иначе вы просто будете совершать больше манипуляций и кликов мышью, чем в перечисленных выше способах.
- В открытой «Панели управления» найдите значок «Администрирование» и нажмите по нему. Если тип просмотра установлен не «Значки», а «Категория», сперва перейдите в «Система и безопасность» и уже там в самом низу нажмите по выделенному большими буквами слову «Администрировании».
Из списка всех элементов найдите «Службы» и запустите это приложение.
Способ 6: Системная папка Windows
Осуществить запуск можно и найдя программу в одной из системных папок на компьютере. По умолчанию «Службы», как и многие другие стандартные утилиты Windows, располагаются здесь: C:\Windows\System32. Отыщите приложение «services» и откройте его. В списке может быть два файла с одинаковым названием, запускать нужно тот, что имеет логотип в виде шестеренок.
Устранение проблем с запуском «Служб»
В редких ситуациях пользователю не удается запустить оснастку, и почти всегда это связано с повреждением системных файлов или вирусной активностью.
- Первое, что нужно предпринять в такой ситуации — попытаться выполнить восстановление системы, если эта функция включена в Windows 7. Используйте последнюю доступную точку восстановления. Новичкам, не выполнявшим ранее такую процедуру, советуем ознакомиться с нашей статьей по этой теме. Для этого перейдите по ссылке ниже и прочитайте информацию в Способе 1.
Подробнее: Восстановление системы в Windows 7
Следующим действенным вариантом станет использование консольной команды SFC, занимающейся поиском и восстановлением поврежденных системных файлов. Более подробно мы рассматривали эту процедуру в отдельном материале. Используйте ссылку ниже и Способ 1. Некоторым юзерам может подойти и Способ 2.
Подробнее: Восстановление системных файлов в Windows 7
Порой системе не удается выполнить восстановление, из-за чего пользователю понадобится воспользоваться дополнительной командой для Командной строки, которая исправляет проблемы в хранилище резервных образов системных файлов. Развернуто об этом написано далее.
Подробнее: Восстановление поврежденных компонентов в Windows 7 при помощи DISM
Подробнее: Борьба с компьютерными вирусами
Когда ничего не помогает, начинающему пользователю остается лишь прибегнуть к переустановке операционной системы. Эта процедура не так сложна, как может показаться на первый взгляд. Для всех, кто еще не сталкивался с ней, рекомендуем к ознакомлению отдельные руководства.
В большинстве случаев никаких проблем с запуском приложения «Службы» возникнуть не должно, но если это случилось, представленные рекомендации должны помочь их устранить.
Get-Service: проверка состояния служб Windows в PowerShell
С помощью командлета Get-Service можно получить список всех установленных в системе служб, их состояние и тип запуска. Этот и другие командлеты для получения статуса и управления службами Windows впервые появился в версии Powershell 1.0. В этой статье мы разберем типовые примеры использования Get-Service для получения статуса служб на локальном или удаленных компьютерах, типе запуска служб и покажем как определять зависимости служб.
Получить список служб, установленных на локальном или удаленном компьютере можно с помощью командлета Get-Service. Команда Get-Service без параметров возвращает список всех служб на локальной системе.
Данная команда выведет список всех служб и их статус (запущена или остановлена) и отображаемое имя (Display Name).
Если вам нужно вывести только запушенные службы, воспользуемся такой командой:
Оператор конвейера (|) передает результаты командлету Where-Object, который отбирает только те службы, для которых параметр Status имеет значение Running. В том случае, если нужно вывести только остановленные службы, укажите значение Stopped.
Получить все свойства объекта службы можно с помощью командлета Get-Member.
Как вы видите, данный объект имеет тип (Typename) System.ServiceProcess.ServiceController. На скриншоте выведены все доступные свойства и методы объектов служб в системе (большинство из них не используются при отображении по умолчанию).
Чтобы вывести определенные свойства службы, нужно воспользоваться возможностями выбора свойств объектов с помощью командлета Select. Например, нам нужно вывести имя, статус и доступные возможности службы Windows Update:
get-service wuauserv | select Displayname,Status,ServiceName,Can*
DisplayName : Windows Update
Status : Stopped
CanPauseAndContinue : False
CanShutdown : False
CanStop : False
К примеру, чтобы получить тип запуска служб Windows, выполните команду (работает в PowerShel 5.1):
Get-Service | select -property name,starttype
Можно отфильтровать полученный список по имени службы, используя звездочку как подстановочный знак:
Так можно отсортировать список служб компьютера в порядке убывания по значению свойства Status. Запущенные службы отображаются раньше остановленных.
get-service s* | sort-object status -Descending
В том случае, если нужно проверить наличие (существование) службы в системе (как правило, это может понадобиться в различных скриптах), вы можете воспользоваться такой конструкцией:
if (Get-Service «ServiceTest» -ErrorAction SilentlyContinue)
<
Write-host «ServiceTest exists»
>
Командлет Get-Service можно использовать для получения статуса служб не только на локальном, но и удаленных компьютерах. Для этого нужно использовать аргумент –Computername. Подключение к удаленным компьютерам осуществляется не через PowerShell Remoting (WinRM), а через службу Service Manager (по аналогии с командой sc.ex).
get-service wuauserv -ComputerName remotePC1
Если вы используете PowerShell v3 или выше, то можно опросить статус службы сразу на множестве удаленных компьютерах, их имена нужно перечислить через запятую.
get-service spooler -ComputerName remotePC1,remotePC2, remotePC3| format-table Name,Status,Machinename –autosize
Командлет format-table используется в данном примере для получения более удобного табличного представления состояния служб.
Командлет Get-Service имеет еще два параметра, которые удобно использовать при администрировании служб. Параметр DependentServices получает службы, которые зависят от данной службы. Параметр RequiredServices получает службы, от которых зависит данная служба.
Приведенная ниже команда выводит список служб, требуемых службе LanmanWorkstation для запуска.
Get-Service -Name LanmanWorkstation –RequiredServices
Status Name DisplayName
—— —- ————
Running NSI Network Store Interface Service
Running MRxSmb20 SMB 2.0 MiniRedirector
Running Bowser Browser Support Driver
Следующая команда выводит зависимые службы (подробнее о настройке зависимостей служб в Windows), которым требуется служба LanmanWorkstation.
Get-Service -Name LanmanWorkstation -DependentServices