OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

snoopコマンドをcshからkill出来ない

  • すぐに回答を!
  • 質問No.6383858
  • 閲覧数552
  • ありがとう数14
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 100% (1/1)

soralis初心者です。

サーバの資料採取のため、以下の概要のcshを組み、クーロン登録しております。

(1)snoop起動(snoop1.csh ,snoop2.csh)
snoop -o XXX01.snoop -d XXX01
snoop -o XXX02.snoop -d XXX02
(2)シェルの停止(snoopkill.csh)
pgrep -f 'snoop' | xargs kill


(1)の起動自体はうまく行えているのですが、
(2)の処理をcshから起動すると、プロセスが死にません。

※詳細
(2)をクーロンから実行後、cshのプロセスは死んでいるが、
snoopコマンド自体のプロセスが生きたままになり、
snoopログが無限に作り続けられている状態です。

コマンド(pgrep -f 'snoop' | xargs kill)を直接コマンドラインから
入力すると、snoopのプロセスは全て死にました。

cshと通常のコマンド入力ではkillの作用が異なるのでしょうか?

御回答をよろしくお願いします。

---------------------------------------------------------
(1)起動後のプロセス状態
pgrep -lf 'snoop'

88889 sh -c /XXX/snoop1.csh
88888 sh -c /XXX/snoop2.csh
77777 snoop -o XXX01.snoop -d XXX01
77776 snoop -o XXX02.snoop -d XXX02
---------------------------------------------------------

---------------------------------------------------------
(2)起動後(クーロン)のプロセス状態
pgrep -lf 'snoop'

77777 snoop -o XXX01.snoop -d XXX01
77776 snoop -o XXX02.snoop -d XXX02
---------------------------------------------------------


---------------------------------------------------------
(2)のコマンドをコマンドラインから実行後のプロセス状態
pgrep -lf 'snoop'



---------------------------------------------------------
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル3

ベストアンサー率 100% (1/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
お礼コメント
kamo19871011

お礼率 100% (1/1)

御回答ありがとうございます。

こちらで確認したところ、
やはりKillするシェルのファイル名がネックとなっていました。

Killコマンドを発行した直後、起動元のシェルまで死んだため、
うまく走らなかったようです。(--;)

Killするシェルを以下の通り変更し、うまくいくことを確認しました。

(2)シェルの停止(snoopkill.csh ⇒ snpkill.csh(ファイル名を変更))
pgrep -f 'snoop' | xargs kill



単純な問題で助かりました。

本当にありがとうございます。
投稿日時 - 2010-12-21 18:15:57
-PR-
-PR-
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ