~/binなどにコマンド登録するほどの代物ではないので、~/.bash_profileに以下を登録。
function pcheck() {
  process=`ps -p $1`
  while [ $? -ne 1 ]; do
    sleep 1
    process=`ps -p $1`
  done
  echo "$1 is finished."
}
使い方は以下。12345はプロセスIDに置換してください。 このコマンドを実行すると、プロセスが終了した時にnohupと同様に、ターミナルに通知が表示されます。
nohup bash -lc "pcheck 12345" &
# nohup pcheck 12345 &  # これでは動かない
~/.bashrcと~/.bash_profileのどちらにコマンドを登録しても、nohup pcheck 12345 & とは動かせないので注意。 また~/.bashrcに関数登録しても動きませんでした。~/.bash_profileに書く必要があるみたいです。
0 件のコメント:
コメントを投稿