Ability to kill processes of many users
This commit is contained in:
parent
9824873526
commit
f311b1f3f2
1 changed files with 12 additions and 10 deletions
22
assassinate
22
assassinate
|
@ -6,9 +6,8 @@ function logexit {
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
(($#<1)) && logexit "Usage: ${0:t} user"
|
(($#<1)) && logexit "Usage: ${0:t} user [user ...]"
|
||||||
|
|
||||||
victim="$1"
|
|
||||||
|
|
||||||
function stopquestion() {
|
function stopquestion() {
|
||||||
print -n -- "$* (y/n): "
|
print -n -- "$* (y/n): "
|
||||||
|
@ -19,15 +18,18 @@ function stopquestion() {
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
case $victim in
|
local processlist
|
||||||
$USER) stopquestion "Are you sure to kill your own processes?";;
|
for victim in $@; do
|
||||||
init|root) stopquestion "Are you sure to kill all '$victim' processes?";;
|
|
||||||
}
|
|
||||||
|
|
||||||
processlist=( $(ps aux | awk '$1 == "'$victim'" {print $2}') )
|
case $victim in
|
||||||
|
$USER) stopquestion "Are you sure to kill your own processes?";;
|
||||||
|
init|root) stopquestion "Are you sure to kill all '$victim' processes?";;
|
||||||
|
esac
|
||||||
|
|
||||||
|
processlist=( $processlist $(ps aux | awk '$1 == "'$victim'" {print $2}') )
|
||||||
|
|
||||||
|
(($#processlist == 0)) && logexit "The user '$victim' doesn't run any process"
|
||||||
|
|
||||||
print -l -- $processlist
|
done
|
||||||
|
|
||||||
(($#processlist == 0)) && logexit "The user '$victim' doesn't run any process"
|
|
||||||
|
|
||||||
sudo kill -9 $processlist
|
sudo kill -9 $processlist
|
||||||
|
|
Loading…
Reference in a new issue