Немного старого доброго сценария оболочки:
@echo off
setlocal
set SERVICES=
for /f "skip=1 tokens=*" %%S in ('%SystemRoot%\System32\net.exe start') do call :ADD_SERVICE %%S
echo Running services are : [%SERVICES%]
endlocal
goto END
:ADD_SERVICE
set SERVICE=%*
if "%SERVICE%" == "" goto END
if "%SERVICE%" == "The command completed successfully." goto END
set SERVICES=%SERVICES%%SERVICE%,
goto END
:END
Мог бы я быть злым и предложить вариант Cygwin:
net start | sed -e '1,2d' -e ':a' -e N -e 's/\n /,/' -e ta > services.csv
самый основной путь был бы, чтобы сделать это быть;
сетевой запуск> services.csv
Sysinternals имеет много инструментов, которые будут поставщик больше детализированной подробной информации из Ваших процессов. Такой как PsService, та же функция, передающая результат по каналу в файл, экспортирует по мере необходимости"> filename.extension"
У меня есть более простая команда, чем вышеупомянутые примеры. WMI установлен по умолчанию на Windows XP или Windows 2k3 и выше, хотя использовать программу wmic.exe, машина, возможно, должна инициализировать перед локальной операцией. От командной строки дают команду:
WMIC path Win32_Service where state='Running' get /format:csv
или, для машины в сети:
WMIC /node:myserver Win32_Service where state='Running' get /format:csv
Перенаправьте вывод в файл по Вашему выбору.
Изменение/format:csv к/format:list делает человекочитаемый вывод. Один из моих серверов дает это для своих услуг HP Insight:
AcceptPause=TRUE
AcceptStop=TRUE
Caption=HP Insight Storage Agents
CheckPoint=0
CreationClassName=Win32_Service
Description=HP Insight Storage Agents
DesktopInteract=FALSE
DisplayName=HP Insight Storage Agents
ErrorControl=Normal
ExitCode=0
InstallDate=
Name=CqMgStor
PathName=C:\WINDOWS\system32\CpqMgmt\cqmgstor\cqmgstor.exe
ProcessId=1836
ServiceSpecificExitCode=0
ServiceType=Own Process
Started=TRUE
StartMode=Auto
StartName=LocalSystem
State=Running
Status=OK
SystemCreationClassName=Win32_ComputerSystem
SystemName=CRL500
TagId=0
WaitHint=0
Скорее всего, у Вас нет интереса ко многим из этих атрибутов и значений. Принятие Вас только хочет Имя, Подпись и Путь для каждого рабочего процесса, Вы могли бы дать следующую команду, указывающую только эти атрибуты:
WMIC /node:myserver path Win32_Service where state='Running' get name,caption,pathname /format:csv
Ограбить