読者です 読者をやめる 読者になる 読者になる

Process group を kill する

例えば

% perl -e 'system "sleep 1000"' | grep a | sort | uniq

% ps axo pid,pgid,command
  PID  PGID COMMAND
26275 26275 -zsh
84326 84326 perl -e system "sleep 1000"
84327 84326 grep a
84328 84326 sort
84329 84326 uniq
84330 84326 sleep 1000

みたいになっているとき、group leader (PID=PGID) の 84326 をマイナスにした

% perl -e 'kill INT => -84326'

もしくは SIGNAL をマイナスにした

% perl -e 'kill -2 => 84326'

をするといい。

cf