GNU/Linux >> Znalost Linux >  >> Linux

Najděte (a zabijte) staré procesy

Řešení 1:

Můžete to udělat kombinací ps , awk a kill:

ps -eo pid,etime,comm

Poskytuje vám třísloupcový výstup s PID procesu, uplynulým časem od spuštění procesu a názvem příkazu bez argumentů. Uplynulý čas vypadá takto:

mm:ss
hh:mm:ss
d-hh:mm:ss

Protože chcete procesy, které běží déle než týden, hledali byste řádky odpovídající tomuto třetímu vzoru. Pomocí awk můžete odfiltrovat procesy podle doby běhu a podle názvu příkazu, jako je tento:

ps -eo pid,etime,comm | awk '$2~/^7-/ && $3~/mycommand/ { print $1 }'

který vypíše pid všech příkazů odpovídajících 'mycommand', které byly spuštěny déle než 7 dní. Zahrňte tento seznam do zabíjení a máte hotovo:

ps -eo pid,etime,comm | awk '$2~/^7-/ && $3~/mycommand/ { print $1 }' | kill -9

Řešení 2:

killall --quiet --older-than 1w process_name


Linux
  1. Najděte 10 nejběžnějších procesů podle využití paměti a CPU

  2. Jak najdu a ukončím proces v Ubuntu

  3. Linux:Najděte a zabijte zombie procesy

  1. Jak najít a zabít zombie proces v Linuxu

  2. Co jsou zombie procesy a jak najít a zabít zombie procesy?

  3. Najděte a zkopírujte soubory

  1. Jak najít nejběžnější procesy podle využití paměti a CPU

  2. Najít vzor a přesunout?

  3. Nejlepší způsob, jak zabít procesy Zombie a D state v linuxu