2012-02-16 2 views
-1

テキストファイルをスキャンしてからコマンドを実行する方法があるかどうかを知りたいと思います。私はgrepがどこにもいないことを試みました。私はまた、発見を試みました。それは有望だと思うが、私はそれをどのように使うかについての良い説明を得ることはできないようだ。これが何のために使用されているかを知りたいのなら、説明があります:私はhttpを使って単語を送信するiPhoneアプリを持っています。サーバー側のアプリケーションはコマンドを聞いていて、コマンドを受信するとコマンドを実行します。ログに単語が表示されたらコマンドを実行しますか?

+3

多分詳細でしょうか? – Barry

+1

ようこそStackOverflowへ。 httpを介して単語を受け取っているサーバーアプリケーションがある場合、テキストファイルはどこに再生されますか?あなたの質問は非常に曖昧です。詳細を提供するように編集できますか? –

答えて

2

"needle"が含まれており、その内容が表示されているファイルを見つけると、以下のようになります。それに応じて変更:

find。 -exec grep needle -q {} \; -exec cat {} \;

0

bashで、ファイルをtail -f、パイプ、それをこのスクリプトにできます

while read LINE; do 
    grep -q word <<< $LINE && command_to_execute 
done 

しかし、最善のことは(ログファイルのIファイルを解析するのではなく、Webサーバーでこのロジックを配置するだろう推測している)。

UPDATE

上記のループは、grepのは、各繰り返しで呼ばれているとして実行するように高価です。これはより良いです:

tail -f file | grep word | while read LINE; do 
    command_to_execute 
done 
関連する問題