1

Я хочу знать, сколько сервисов, общее количество, установлено на моем Server 2012. Используя services.msc мне нужно посчитать вручную один за другим.

Я ищу командную строку или подобное.

3 ответа3

3

Вариант 1 - Экспорт списка Вы можете щелкнуть правой кнопкой мыши имя компьютера в services.msc, выбрать "Экспорт списка" и затем сохранить его в виде файла CSV:

Отсюда вы можете открыть его в Excel и сосчитать строки (-1 для заголовка - в данном случае 162):

Если у вас нет Excel, такой инструмент, как Notepad++, также подсчитает количество строк.


Вариант 2 - PowerShell

(Get-Service | Measure-Object).Count

В буквальном смысле - получить список служб, измерить возвращаемый список и отобразить его свойство "Количество"


Бонусные баллы - оба метода могут быть использованы на удаленных машинах.

В services.msc щелкните правой кнопкой мыши компьютер и выберите «Подключиться к другому компьютеру ...»

В powershell используйте переключатель ComputerName чтобы получить список служб удаленных компьютеров:

(Get-Service -ComputerName "MyComputer.MyDomain.local" | Measure-Object).Count
2

Я хочу знать, сколько сервисов (включая драйверы) установлено

Как отметил Моав в комментариях:

Некоторые сервисы скрыты и не будут отображаться в списке сервисов.

Драйверы также запускаются как службы и не отображаются, если вы посмотрите на HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services , вы увидите все службы Windows.

Решение 1 с использованием reg

Вы можете использовать reg вместе с find:

F:\test>reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services | find "" /v /c
541

F:\test>

Заметки:

  • find "" /v /c используется для подсчета количества строк

Я хочу знать, сколько сервисов (кроме драйверов) установлено

Замечания:

  • Водители также работают как службы. Далее вы узнаете, как считать установленные драйверы независимо от служб.

Решение 1 с использованием sc

Вы можете использовать sc вместе с find:

F:\test>sc query state= all | find /c "SERVICE_NAME"
201

F:\test>

Заметки:

  • Остерегайтесь лишних пробелов:

    SC QUERY state= all Работы

    SC QUERY state =all ошибки!

  • find /c используется для подсчета количества строк

Решение 2 с использованием wmic

Вы можете использовать wmic вместе с find:

F:\test>wmic service get name | find "" /v /c
203

F:\test>

Замечания:

  • Вам нужно вычесть 2 из результата, так как wmic выводит заголовок ("Имя") и завершающую пустую строку
  • find "" /v /c используется для подсчета количества строк

Я хочу знать, сколько драйверов установлено

Как отметил Моав в комментариях:

Некоторые сервисы скрыты и не будут отображаться в списке сервисов.

Драйверы также запускаются как службы и не отображаются, если вы посмотрите на HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services , вы увидите все службы Windows.

Решение 1 с использованием driverquery

Вы можете использовать driverquery вместе с find:

F:\test>driverquery | find "" /v /c
287

F:\test>

Замечания:

  • Вам нужно вычесть 2 из результата, так как driverquery выводит 2 строки заголовка
  • find "" /v /c используется для подсчета количества строк

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

  • Индекс AZ командной строки Windows CMD - Отличный справочник по всем вопросам, связанным с командной строкой Windows.
  • driverquery - отображает список всех установленных драйверов устройств и их свойства.
  • find - поиск текстовой строки в файле и отображение всех строк, где она найдена.
  • reg - Чтение, установка или удаление ключей и значений реестра, сохранение и восстановление из.REG-файл
  • sc - Управление службой - Создание, Пуск, Остановка, Запрос или Удаление любой службы Windows.
  • wmic - команда инструментария управления Windows.
0

Вы можете использовать опцию « Export List в services.msc и выбрать ее экспорт в виде файла CSV. Открытие экспортированного файла в Excel (или любом другом считывателе с поддержкой csv) должно подсчитать количество установленных служб.

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