Cum să enumerați toate serviciile Windows folosind PowerShell sau linia de comandă


Aplicațiile care rulează pe care le vedeți pe ecran sunt o fracțiune din ceea ce se întâmplă în Windows. De la gestionarea driverelor de dispozitiv până la asigurarea securității, o mulțime de procese de fundal mențin un computer Windows funcțional.

Pentru orice administrator de sistem care supraveghează mai multe computere, este important să poată vedea starea acestor servicii critice. Abordarea Task Manager este prea lentă pentru aceasta și nu o puteți automatiza cu un script.

Soluția? Instrumente din linia de comandă. Folosind Prompt de comandă sau PowerShell, puteți obține rapid o citire despre serviciile operaționale Microsoft care rulează pe un sistem, ajutându-vă să diagnosticați rapid orice probleme.

Afișarea serviciilor Windows în linia de comandă

Deși nu este la fel de flexibil sau puternic ca Windows PowerShell, promptul de comandă este totuși un instrument excelent pentru administratorii de sistem. Puteți folosi comanda queryex pentru a obține starea atât a serviciilor active, cât și a celor dezactivate și apoi utilizați comanda taskkill pentru a încheia procesele neplăcute.

  1. Pentru a utiliza comanda queryex, rulați Command Prompt ca administrator. Puteți găsi aplicația căutând cmd în meniul de pornire.
    1. Există multe moduri de a folosi comanda sc queryex. Tipul și starea sunt cei doi parametri cei mai des utilizați. De exemplu, introduceți următoarea comandă pentru a vizualiza toate  procesele Windows:
    2. sc queryex type=service state=all

      1. Vizualizarea implicită poate fi puțin copleșitoare. Puteți afișa doar numele proceselor pentru a face lista mai ușor de analizat:
      2. sc queryex type=service state=all | găsiți /i „SERVICE_NAME:”

        1. În mod implicit, comanda listează toate procesele active. Pentru a le căuta pe cele inactive, modificați parametrul de stare:
        2. sc queryex type=service state=inactive

          1. De asemenea, puteți interoga starea unui anumit proces după numele acestuia. Acest lucru este incredibil de util pentru administratorii de sistem, deoarece aceștia pot configura fișiere batch pentru a verifica mai multe procese simultan. Iată un exemplu:
          2. interogare sc DeviceInstall

            Afișarea serviciilor Windows în PowerShell

            .

            PowerShell este menit să fie un shell dedicat liniei de comandă pentru Windows modern. Ca atare, oferă acces la aproape fiecare componentă a sistemului de operare prin comenzi, iar serviciile Windows nu fac excepție.

            Avantajul PowerShell este că îl puteți automatiza cu ușurință. Toate comenzile PowerShell pot fi compilate în scripturi complexe, permițându-vă să configurați sarcini de administrare a sistemului pe mai multe computere fără probleme.

            1. Începeți prin a deschide PowerShell. Îl puteți căuta în meniul Start; asigurați-vă doar că rulați o instanță ridicată (adică, ca administrator).
              1. Cea mai simplă comandă pentru listarea serviciilor Windows pe PowerShell este Get-Service . Afișează toate serviciile de pe computer, împreună cu starea și numele acestora. Singura problemă este că lista de servicii poate fi destul de lungă.
                1. Când utilizați Get-Service , este o idee mai bună să exportați lista într-un fișier text. Puteți face acest lucru folosind conducte, astfel:
                2. Get-Service | Ieșire din fișierul „C:\logs\All_Services.txt”

                  1. Pentru a căuta starea unui anumit serviciu, urmați comanda Get-Service cu numele serviciului. Puteți solicita starea mai multor procese, separând numele acestora cu virgule.
                  2. Get-Service CryptSvc, COMSysApp

                    1. Conductele pot fi, de asemenea, folosite pentru a combina cmdlet-ul Get-Service cu funcția Where-Object și pentru a filtra rezultatele după Stare. Următoarea comandă ilustrează acest lucru prin obținerea tuturor serviciilor de rulare:
                    2. Get-Service | Unde-Object {$_.Status -EQ „În rulare”}

                      Verificarea dependențelor de servicii

                      Orice proces complex este împărțit în mai multe servicii interdependente. Acesta este motivul pentru care pur și simplu obținerea statutului unui anumit serviciu nu este adesea suficientă. De asemenea, trebuie să verificați starea serviciilor de care depinde serviciul.

                      1. Pentru a vedea serviciile necesare unui anumit serviciu, utilizați marcajul -RequiredServices cu cmdletul Get-Service . Iată un exemplu:
                      2. .

                        Get-Service -Name CryptSvc –RequiredServices

                        1. În mod similar, pentru a obține o listă de servicii care depind de un anumit serviciu, profitați de marcajul -DependentServices .
                        2. Get-Service -Name CryptSvc -DependentServices

                          Aceste două semnalizări sunt cruciale în scrierea scripturilor pentru a porni sau opri automat serviciile Windows, deoarece vă oferă o modalitate de a urmări toate serviciile conectate cu serviciul afectat.

                          Afișarea serviciilor Windows pe computere la distanță

                          Metoda PowerShell nu se limitează la computerele locale. Puteți utiliza cmdletul Get-Service cu aceeași sintaxă descrisă mai sus pentru a interoga și procesele computerelor la distanță. Doar adăugați indicatorul -ComputerName la sfârșit pentru a specifica de pe ce computer la distanță să preia informații.

                          Iată un exemplu:

                          get-service CryptSvc -ComputerName Workstation7

                          Gestionarea serviciilor Windows în PowerShell

                          Obținerea stării serviciilor nu este singurul lucru pe care îl puteți face în Windows PowerShell. Fiind un mediu de scripting cu drepturi depline, oferă alternative de script pentru toate opțiunile GUI.

                          Cmdleturile Powershell pot opri, porni, reporni sau chiar modifica serviciile. Împreună cu comenzile automate Get-Service , scripturile PowerShell pot fi scrise pentru a automatiza complet sarcinile zilnice de gestionare a sistemului.

                          1. Pe lângă interogarea stării serviciilor, puteți utiliza și PowerShell pentru a le gestiona. Pornirea sau oprirea serviciilor se poate face cu o singură comandă, necesitând doar numele serviciului. De exemplu, așa puteți opri un serviciu:
                          2. Stop-Service -Name Spooler

                            1. Pornirea unui serviciu decurge în mod similar:
                            2. Start-Service -Name Spooler

                              1. Dacă un serviciu nu funcționează corect, puteți alege și să-l reporniți:
                              2. Restart-Service -Name Spooler

                                1. Există și cmdlet-ul Set-Service care poate fi folosit pentru a modifica proprietățile unui serviciu. Aici dezactivăm pornirea automată a serviciului Print Spooler:
                                2. .

                                  Set-Service „Spooler” -StartupType Dezactivat

                                  Care este cea mai bună modalitate de a enumera serviciile Windows?

                                  Fie că utilizați Windows 10 sau un server Windows, posibilitatea de a vizualiza o listă a tuturor serviciilor Windows poate fi utilă. Puteți diagnostica probleme cu funcțiile critice ale sistemului sau opriți serviciile Microsoft inutile pentru a îmbunătăți performanța.

                                  În acest scop, PowerShell este cea mai bună opțiune. Deși puteți obține o listă de servicii în linia de comandă, funcționalitatea suplimentară oferită de PowerShell este mai utilă.

                                  Puteți folosi cmdleturile PowerShell pentru a obține starea serviciului proceselor Windows, filtrăndu-le după starea lor sau alți parametri. De asemenea, este ușor să determinați serviciile dependente și să le porniți sau să le opriți după cum este necesar.

                                  .

                                  Postări asemănatoare:


                                  26.06.2022