Jak uložit výstup hlavního příkazu do souboru
Příkaz Linux top je velmi používaný správci systému k zobrazení statistik systému v reálném čase týkající se doby provozu systému a průměrného zatížení, použité paměti, spuštěné úlohy, souhrn procesů nebo vláken a podrobné informace o každém běžícím procesu.
Kromě prohlížení běžícího systému v reálném čase však lze výstup příkazu top uložit do souboru pomocí příznaku -b
, který dává pokyn top pracovat v dávkovém režimu a -n
k určení množství iterací, které má příkaz vydat.
V níže uvedeném příkladu přesměrujeme výstup příkazu top do souboru top.txt
v aktuálním pracovním adresáři. Argument -n bude použit pro odeslání pouze jednoho snímku příkazu do uvedeného souboru.
top -b -n 1 > top.txt
Chcete-li číst výsledný soubor, použijte nástroj pro čtení souborů z příkazového řádku, jako je příkaz cat, méně nebo více.
less top.txt
Chcete-li získat pět iterací horního příkazu, spusťte příkaz, jak je znázorněno na níže uvedeném úryvku.
top -b -n 5 > top-5iterations.txt
Chcete-li zobrazit pouze počet spuštěných úloh z výsledného souboru, použijte filtr grep, jak je znázorněno v níže uvedeném příkladu příkazu.
cat top-5iterations.txt | grep Tasks
Chcete-li pořídit snímek konkrétního procesu v top utility, spusťte příkaz s příznakem PID (-p)
. Chcete-li získat PID běžícího procesu, zadejte příkaz pidof proti názvu běžícího procesu.
V tomto příkladu budeme sledovat proces cron pomocí top příkazu pořízením tří snímků PID.
pidof crond
top -p 678 -b -n3 > cron.txt
cat cron.txt
Pomocí iterační smyčky for můžeme zobrazit statistiku procesu prostřednictvím jeho PID, každé dvě sekundy, jak je znázorněno v příkladu níže. Výstup smyčky lze také přesměrovat do souboru. Použijeme stejný cron PID jako ve výše uvedeném příkladu.
for i in {1..4}; do sleep 2 && top -b -p 678 -n1 | tail -1 ; done
Přesměrovat výstup smyčky do souboru.
for i in {1..4}; do sleep 2 && top -b -p 678 -n1 | tail -1 ; done >> cron.txt
cat cron.txt
Toto je jen několik příkladů, jak můžete monitorovat a shromažďovat systémové a procesní statistiky pomocí top příkazu.