- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:snoopコマンドをcshからkill出来ない)
cshからsnoopコマンドをkillできない理由を解説
このQ&Aのポイント
- cshからsnoopコマンドをkillする方法がうまくいかない問題について解説します。
- cshと通常のコマンド入力ではkillの作用が異なるため、snoopコマンドが終了しない現象が発生します。
- 具体的な対処法として、コマンドラインから直接killコマンドを実行する方法を紹介します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
シェルのファイル名に、pgrepしている"snoop"がついてますが、 これを変更したらうまくいかないですか? あと、pgrep|xargしてる部分をpkillにしてみるとか。 一応こっちで試した限りは問題なくkillされてます。 ■実行例 root@opensolaris:~# uname -a SunOS opensolaris 5.11 snv_111b i86pc i386 i86pc Solaris ・シェルの中身 root@opensolaris:~# cat start.csh #!/bin/csh snoop -o snoop.out icmp root@opensolaris:~# cat kill.csh #!/bin/csh echo "*********** kill **************" echo "before " date;pgrep -fl 'snoop' pgrep -f 'snoop' | xargs kill echo "after " date;pgrep -fl 'snoop' ・飛んできたメールの内容 Your "cron" job on opensolaris csh /root/kill.csh produced the following output: *********** kill ************** before Mon Dec 20 20:13:00 JST 2010 1550 snoop -o snoop.out icmp after Mon Dec 20 20:13:00 JST 2010
お礼
御回答ありがとうございます。 こちらで確認したところ、 やはりKillするシェルのファイル名がネックとなっていました。 Killコマンドを発行した直後、起動元のシェルまで死んだため、 うまく走らなかったようです。(--;) Killするシェルを以下の通り変更し、うまくいくことを確認しました。 (2)シェルの停止(snoopkill.csh ⇒ snpkill.csh(ファイル名を変更)) pgrep -f 'snoop' | xargs kill 単純な問題で助かりました。 本当にありがとうございます。