Jak wyświetlić listę wszystkich usług systemu Windows za pomocą programu PowerShell lub wiersza poleceń


Działające aplikacje widoczne na ekranie to ułamek tego, co dzieje się w systemie Windows. Od zarządzania sterownikami urządzeń po zapewnianie bezpieczeństwa – kilka procesów w tle utrzymuje funkcjonowanie komputera z systemem Windows.

Dla każdego administratora systemu nadzorującego wiele komputerów ważna jest możliwość przeglądania stanu tych krytycznych usług. Podejście Menedżera zadań jest na to zbyt wolne i nie można go zautomatyzować za pomocą skryptu.

Rozwiązanie? Narzędzia wiersza poleceń. Używając Wiersz poleceń lub PowerShell, możesz szybko odczytać działające usługi Microsoft działające w systemie, co pomoże Ci szybko zdiagnozować wszelkie problemy.

Wyświetlanie usług systemu Windows w wierszu poleceń

Chociaż nie jest tak elastyczny i wydajny jak Windows PowerShell, Wiersz poleceń jest nadal doskonałym narzędziem dla administratorów systemu. Możesz użyć polecenia queryex , aby uzyskać status zarówno usług aktywnych, jak i wyłączonych, a następnie użyj polecenia taskkill, aby zakończyć irytujące procesy.

  1. Aby użyć polecenia queryex, uruchom Wiersz polecenia jako administrator. Aplikację możesz znaleźć, wyszukując polecenie cmd w menu Start.
    1. Istnieje wiele sposobów użycia polecenia sc queryex. Typ i stan to dwa najczęściej używane parametry. Na przykład wpisz następujące polecenie, aby wyświetlić wszystkie procesy systemu Windows:
    2. sc queryex type=service state=all

      1. Widok domyślny może być nieco przytłaczający. Możesz wyświetlić same nazwy procesów, aby ułatwić analizę listy:
      2. sc typ zapytania ex=stan usługi=wszystko | znajdź /i „NAZWA_USŁUGI:”

        1. Domyślnie polecenie wyświetla listę wszystkich aktywnych procesów. Aby wyszukać nieaktywne, zmodyfikuj parametr stanu:
        2. sc queryex type=stan usługi=nieaktywny

          1. Możesz także zapytać o status konkretnego procesu według jego nazwy. Jest to niezwykle przydatne dla administratorów systemu, ponieważ mogą konfigurować pliki wsadowe w celu sprawdzania wielu procesów jednocześnie. Oto przykład:
          2. sc zapytanie DeviceInstall

            Wyświetlanie usług systemu Windows w programie PowerShell

            .

            PowerShell ma być dedykowaną powłoką wiersza poleceń dla współczesnego systemu Windows. W związku z tym zapewnia dostęp za pomocą poleceń do prawie każdego składnika systemu operacyjnego, a usługi systemu Windows nie są tu wyjątkiem.

            Zaletą programu PowerShell jest to, że można go łatwo zautomatyzować. Wszystkie polecenia programu PowerShell można skompilować w złożone skrypty, co pozwala bezproblemowo konfigurować zadania administracyjne systemu na wielu komputerach.

            1. Zacznij od otwarcia programu PowerShell. Możesz go wyszukać w menu Start; pamiętaj tylko o uruchomieniu instancji z podwyższonym poziomem uprawnień (tj. jako administrator).
              1. Najprostszym poleceniem wyświetlającym listę usług Windows w PowerShell jest Get-Service . Pokazuje wszystkie usługi na Twoim komputerze, wraz z ich stanem i nazwami. Jedynym problemem jest to, że lista usług może być dość długa.
                1. W przypadku korzystania z Get-Service lepszym pomysłem jest wyeksportowanie listy do pliku tekstowego. Możesz to zrobić za pomocą potoków, takich jak ten:
                2. Uzyskaj usługę | Plik wyjściowy „C:\logs\All_Services.txt”

                  1. Aby sprawdzić stan konkretnej usługi, wykonaj polecenie Get-Service z nazwą usługi. Możesz zapytać o stan wielu procesów, oddzielając ich nazwy przecinkami.
                  2. Get-Service CryptSvc, COMSysApp

                    1. Pipes można także wykorzystać do połączenia polecenia cmdlet Get-Service z funkcją Where-Object i filtrowania wyników według stanu. Poniższe polecenie ilustruje to poprzez pobranie wszystkich uruchomionych usług:
                    2. Uzyskaj usługę | Where-Object {$_.Status -EQ „Running”

                      Sprawdzanie zależności usług

                      Każdy złożony proces jest podzielony na wiele współzależnych usług. Dlatego samo uzyskanie statusu konkretnej usługi często nie wystarczy. Musisz także sprawdzić status usług, od których zależy ta usługa.

                      1. Aby wyświetlić usługi wymagane przez konkretną usługę, użyj flagi -RequiredServices z poleceniem cmdlet Get-Service . Oto przykład:
                      2. .

                        Get-Service -Name CryptSvc –RequiredServices

                        1. Podobnie, aby uzyskać listę usług zależnych od konkretnej usługi, skorzystaj z flagi -DependentServices .
                        2. Get-Service -Nazwa CryptSvc -DependentServices

                          Te dwie flagi są niezbędne przy pisaniu skryptów służących do automatycznego uruchamiania lub zatrzymywania usług systemu Windows, ponieważ umożliwiają śledzenie wszystkich usług powiązanych z usługą, której dotyczy problem.

                          Wyświetlanie usług systemu Windows na komputerach zdalnych

                          Metoda PowerShell nie ogranicza się do komputerów lokalnych. Można użyć polecenia cmdlet Get-Service o tej samej składni opisanej powyżej, aby wysyłać zapytania również do procesów zdalnych komputerów. Po prostu dołącz flagę -ComputerName na końcu, aby określić, z którego komputera zdalnego chcesz pobrać informacje.

                          Oto przykład:

                          get-service CryptSvc -ComputerName Workstation7

                          Zarządzanie usługami Windows w PowerShell

                          Uzyskiwanie stanu usług to nie jedyna rzecz, którą możesz wykonać w programie Windows PowerShell. Jako pełnoprawne środowisko skryptowe zapewnia alternatywy skryptowe dla wszystkich opcji GUI.

                          Polecenia cmdlet programu Powershell mogą zatrzymywać, uruchamiać, ponownie uruchamiać, a nawet modyfikować usługi. W połączeniu z automatycznymi poleceniami Get-Service można pisać skrypty PowerShell w celu pełnej automatyzacji codziennych zadań związanych z zarządzaniem systemem.

                          1. Oprócz sprawdzania stanu usług możesz także używać programu PowerShell do zarządzania nimi. Uruchamianie lub zatrzymywanie usług można wykonać za pomocą jednego polecenia, wymagającego jedynie nazwy usługi. Na przykład w ten sposób możesz zatrzymać usługę:
                          2. Stop-Service – bufor nazw

                            1. Uruchamianie usługi przebiega podobnie:
                            2. Usługa startowa – bufor nazw

                              1. Jeśli usługa nie działa poprawnie, możesz także uruchomić ją ponownie:
                              2. Uruchom ponownie usługę – bufor nazw

                                1. Istnieje również polecenie cmdlet Set-Service, którego można użyć do zmiany właściwości usługi. Tutaj wyłączamy automatyczne uruchamianie usługi Bufor wydruku:
                                2. .

                                  Ustaw usługę „Spooler” – typ uruchomienia wyłączony

                                  Jaki jest najlepszy sposób na wyświetlenie listy usług systemu Windows?

                                  Bez względu na to, czy korzystasz z systemu Windows 10, czy z systemu Windows Server, możliwość wyświetlenia listy wszystkich usług systemu Windows może być przydatna. Możesz zdiagnozować problemy z krytycznymi funkcjami systemu lub zatrzymaj niepotrzebne usługi Microsoft, aby poprawić wydajność.

                                  W tym celu najlepszym rozwiązaniem jest PowerShell. Chociaż listę usług można uzyskać w wierszu poleceń, bardziej przydatna jest dodatkowa funkcjonalność zapewniana przez PowerShell.

                                  Za pomocą poleceń cmdlet programu PowerShell można uzyskać stan usług procesów systemu Windows, filtrując je według stanu lub innych parametrów. Łatwo jest także określić usługi zależne i w razie potrzeby je uruchomić lub zatrzymać.

                                  .

                                  Powiązane posty:


                                  26.06.2022