![목록의 프로세스를 종료하는 가장 좋은 방법](https://linux55.com/image/64318/%EB%AA%A9%EB%A1%9D%EC%9D%98%20%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4%EB%A5%BC%20%EC%A2%85%EB%A3%8C%ED%95%98%EB%8A%94%20%EA%B0%80%EC%9E%A5%20%EC%A2%8B%EC%9D%80%20%EB%B0%A9%EB%B2%95.png)
이 zsh 스크립트가 있습니다. 이를 수행하는 더 우아한 방법이 있습니까?
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
}
답변1
이를 사용하여 xargs
분리하고 killall
각각에 대해 실행할 수 있습니다.
echo $PROCESSES_TO_QUIT | xargs killall -9
답변2
어쩌면 시도해보십시오 killall
:
% export PROCESSES_TO_QUIT='puma rake ...'
% export KILL_SIGNAL='killall -9 '
% eval $KILL_SIGNAL $PROCESSES_TO_QUIT