Você pode usar xargs
para separá-los e executar killall
para cada um:
echo $PROCESSES_TO_QUIT | xargs killall -9
Eu tenho este script zsh. Existe uma maneira mais graciosa de fazer isso?
export PROCESSES_TO_QUIT='puma rake sidekiq spring rails ruby-debug phantomjs zeus passenger guard resque "node server.js"'
pgr() {
echo "Finding processes in list: $PROCESSES_TO_QUIT"
for x in 'echo ${PROCESSES_TO_QUIT}'; do
pgrep -fl $x;
done
}
pgk() {
echo "Killing processes in list: $PROCESSES_TO_QUIT"
for x in 'echo ${PROCESSES_TO_QUIT}'; do
pkill -fl $x;
done
}
pgkk() {
echo "Killing -9 processes in list: $PROCESSES_TO_QUIT"
for x in 'echo ${PROCESSES_TO_QUIT}'; do
pkill -9 -fl $x;
done
}
Você pode usar xargs
para separá-los e executar killall
para cada um:
echo $PROCESSES_TO_QUIT | xargs killall -9
Talvez tente killall
:
% export PROCESSES_TO_QUIT='puma rake ...'
% export KILL_SIGNAL='killall -9 '
% eval $KILL_SIGNAL $PROCESSES_TO_QUIT