Skrypt wsadowy - proces

W tym rozdziale omówimy różne procesy związane ze skryptem wsadowym.

Przeglądanie listy uruchomionych procesów

W skrypcie wsadowym komenda TASKLIST może służyć do uzyskania listy aktualnie uruchomionych procesów w systemie.

Składnia

TASKLIST [/S system [/U username [/P [password]]]] [/M [module] | /SVC | /V] [/FI filter]
[/FO format] [/NH]
S.No. Opcje i opis
1.

/S system

Określa system zdalny do połączenia

2.

/U

[domain\]user

Określa kontekst użytkownika, w którym polecenie powinno zostać wykonane.

3.

/P [password]

Określa hasło dla danego kontekstu użytkownika. Monituje o wprowadzenie danych, jeśli zostanie pominięty.

4.

/M [module]

Wyświetla listę wszystkich zadań aktualnie używających podanej nazwy exe / dll. Jeśli nazwa modułu nie jest określona, ​​wyświetlane są wszystkie załadowane moduły.

5.

/SVC

Wyświetla usługi hostowane w każdym procesie.

6.

/V

Wyświetla szczegółowe informacje o zadaniu.

7.

/FI filter

Wyświetla zestaw zadań spełniających podane kryteria określone przez filtr.

8.

/FO format

Określa format wyjściowy. Prawidłowe wartości: „TABLE”, „LIST”, „CSV”.

9.

/NH

Określa, że ​​„Nagłówek kolumny” nie powinien być wyświetlany w wyniku. Dotyczy tylko formatów „TABLE” i „CSV”.

Przykłady

TASKLIST

Powyższe polecenie spowoduje wyświetlenie listy wszystkich procesów uruchomionych w systemie lokalnym. Poniżej znajduje się migawka danych wyjściowych, która jest renderowana, gdy powyższe polecenie jest uruchamiane bez zmian. Jak widać na poniższym wyjściu, nie tylko otrzymujesz różne procesy uruchomione w systemie, ale także zużycie pamięci przez każdy proces.

Image Name                    PID       Session Name       Session#     Mem Usage
========================= ========    ================ =========== ============
System Idle Process             0        Services            0              4 K
System                          4        Services            0            272 K
smss.exe                      344        Services            0          1,040 K
csrss.exe                     528        Services            0          3,892 K
csrss.exe                     612        Console             1         41,788 K
wininit.exe                   620        Services            0          3,528 K
winlogon.exe                  648        Console             1          5,884 K
services.exe                  712        Services            0          6,224 K
lsass.exe                     720        Services            0          9,712 K
svchost.exe                   788        Services            0         10,048 K
svchost.exe                   832        Services            0          7,696 K
dwm.exe                       916        Console             1        117,440 K
nvvsvc.exe                    932        Services            0          6,692 K
nvxdsync.exe                  968        Console             1         16,328 K
nvvsvc.exe                    976        Console             1         12,756 K
svchost.exe                  1012        Services            0         21,648 K
svchost.exe                   236        Services            0         33,864 K
svchost.exe                   480        Services            0         11,152 K
svchost.exe                  1028        Services            0         11,104 K
svchost.exe                  1048        Services            0         16,108 K
wlanext.exe                  1220        Services            0         12,560 K
conhost.exe                  1228        Services            0          2,588 K
svchost.exe                  1276        Services            0         13,888 K
svchost.exe                  1420        Services            0         13,488 K
spoolsv.exe                  1556        Services            0          9,340 K

tasklist > process.txt

Powyższe polecenie pobiera dane wyjściowe wyświetlane przez listę zadań i zapisuje je w pliku process.txt.

tasklist /fi "memusage gt 40000"

Powyższe polecenie pobierze tylko te procesy, których pamięć jest większa niż 40 MB. Poniżej przedstawiono przykładowe dane wyjściowe, które można renderować.

Image Name                    PID      Session Name     Session#     Mem Usage
=========================   ======== ================ =========== ============
dwm.exe                        916     Console             1        127,912 K
explorer.exe                  2904     Console             1        125,868 K
ServerManager.exe             1836     Console             1         59,796 K
WINWORD.EXE                   2456     Console             1        144,504 K
chrome.exe                    4892     Console             1        123,232 K
chrome.exe                    4976     Console             1         69,412 K
chrome.exe                    1724     Console             1         76,416 K
chrome.exe                    3992     Console             1         56,156 K
chrome.exe                    1168     Console             1        233,628 K
chrome.exe                     816     Console             1         66,808 K

Zabijanie określonego procesu

Pozwala użytkownikowi z systemem Microsoft Windows XP Professional, Windows 2003 lub nowszym zabić zadanie z wiersza poleceń systemu Windows według identyfikatora procesu (PID) lub nazwy obrazu. Poleceniem używanym w tym celu jest TASKILL.

Składnia

TASKKILL [/S system [/U username [/P [password]]]] { [/FI filter] 
[/PID processid | /IM imagename] } [/T] [/F]
S.No. Opcje i opis
1.

/S system

Określa system zdalny do połączenia

2.

/U

[domain\]user

Określa kontekst użytkownika, w którym polecenie powinno zostać wykonane.

3.

/P [password]

Określa hasło dla danego kontekstu użytkownika. Monituje o wprowadzenie danych, jeśli zostanie pominięty.

4.

/FI

FilterName

Stosuje filtr, aby wybrać zestaw zadań. Pozwala na użycie „*”. dawny. nazwa_obrazu eq acme * Aby uzyskać dodatkowe informacje i przykłady, zobacz poniższe filtry.

5.

/PID

processID

Określa PID procesu, który ma zostać zakończony. Użyj TaskList, aby uzyskać PID.

6.

/IM

ImageName

Określa nazwę obrazu procesu, który ma zostać zakończony. Do określenia wszystkich zadań lub nazw obrazów można użyć symbolu wieloznacznego „*”.

7.

/T

Kończy określony proces i wszystkie uruchomione przez niego procesy potomne.

8.

/F

Określa wymuszenie zakończenia procesu (ów).

Przykłady

taskkill /f /im notepad.exe

Powyższe polecenie zabija otwarte zadanie notatnika, jeśli jest otwarte.

taskill /pid 9214

Powyższe polecenie zabija proces, który ma proces 9214.

Rozpoczęcie nowego procesu

Skrypty DOS mają również możliwość rozpoczęcia nowego procesu. Osiąga się to za pomocą polecenia START.

Składnia

START "title" [/D path] [options] "command" [parameters]

W którym

  • title - Tekst paska tytułu okna CMD (wymagany).

  • path - Katalog startowy.

  • command - Polecenie, plik wsadowy lub program wykonywalny do uruchomienia.

  • parameters - parametry przekazane do polecenia.

S.No. Opcje i opis
1.

/MIN

Okno startowe Zminimalizowane

2.

/MAX

Zmaksymalizowane okno startowe.

3.

/LOW

Użyj klasy priorytetu IDLE.

4.

/NORMAL

Użyj NORMALNEJ klasy priorytetu.

5.

/ABOVENORMAL

Użyj klasy priorytetu ABOVENORMAL.

6.

/BELOWNORMAL

Użyj klasy priorytetu BELOWNORMAL.

7.

/HIGH

Użyj klasy WYSOKIEGO priorytetu.

8.

/REALTIME

Użyj klasy priorytetu REALTIME.

Przykłady

START "Test Batch Script" /Min test.bat

Powyższe polecenie uruchomi skrypt wsadowy test.bat w nowym oknie. Okna będą uruchamiane w trybie zminimalizowanym i również będą miały tytuł „Test Batch Script”.

START "" "C:\Program Files\Microsoft Office\Winword.exe" "D:\test\TESTA.txt"

Powyższe polecenie faktycznie uruchomi Microsoft Word w innym procesie, a następnie otworzy plik TESTA.txt w MS Word.