bash najít a zabít procesy

A shell script wants your job

Dnes, když jsem pracoval jsem viděl že jeden ze strojů velmi kruté lagna. Vstoupit do něj vypadají zatraceně zombie nabl″skal cron procesy (hrubé a okolí 50-60). Neexistoval způsob, jak zabít je všechny s killall tak jsem musel udělat trochu gramotný řešení problému – Chcete-li zahájit nepořádek praštit skript najít a zabít procesy. 50-Tina PID-není snadné napsat ručně :D. Skript na minutu a poškrábaný je medializovaný primitivní, ale přesto si zaslouží pozornost 🙂

Na jejím úpatí sedí dopravní pás

ps ax | grep -v grep | grep process_name | awk '{print $1}')

Zde jsme si seznam všech s PID procesu, který by měl kilnem jako grep je vyloučeno z tohoto seznamu. Jak jsme již uvedli věci stanou snadno vše, co se otáčí v pro. Zde je konečný výsledek

#!/bin/bash

PR=$(ps ax | grep -v grep | grep process_name | awk '{print $1}')

for PID in $PR
do
echo "$PID will be killed"
kill -9 $PID
done

Může být “vyladěné” jak jméno je jako argument za názvem skriptu a tak zvané jako spustitelný binární. Však to není velmi dobrým zvykem mít mnoho takových 😀 časté případy, ale to nikdy neuškodí, být chráněni před jakékoli šitni

Umocněn Zemanta

zanechte odpověď

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

Anti Spam *