- - PR -
ステップバイシェルスクリプトについて、
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2002-11-28 00:35
いつも@ITのコンテンツを拝見させていただいていますakuroと申すものです。 @ITのコンテンツの「ステップバイシェルスクリプト」の第4回を 見ていて分からないことがあり投稿させていただきました。 この中で(行でいうと真中あたりです)、 #!/bin/bash grep $1 `find &2` というスクリプトにて、 「エラー表示がどうも気になる」の >これを実行して気になったことが2つあります。1つは/etcの下にディレクトリがあっ >た場合、“Is a directory”と出力されてしまうこと。これはgrepコマンドがディレ >クトリを指定された場合に、エラーメッセージとして表示しています。 という所なのですが、 これはどういう意味なのでしょうか? 色々試しているのですが、“Is a directory”というエラーは表示されませんでした。 具体的にどのようなパターンの時に上記のエラーが起きるのでしょうか? 初歩的な質問で申し訳ないのですが、よろしくお願いします。 自分のPC環境 PC--RedHat7.3 シェル--bash |
|
投稿日時: 2002-11-28 02:12
grep の仕様によります。
現に手元の grep (GNU grep 2.5) では、対象ファイルとしてディレクトリを指定してもエラーメッセージは出ません。 あ…バグ発見。 -------------------------------------------- : # コマンド実行 grep -s $1 `find $2 -type f 2> /dev/null` : -------------------------------------------- は、「grep -s $1 `find $DIR -type f 2> /dev/null]ですね。 -- # 余談ですが、grep $1 -r $2 なんてのもできますし、 # find $2 -type f -exec grep $1 \{\} \; なんて方法も。 # 連載の趣旨はシェルスクリプトなので採用はできませんけど。 [ メッセージ編集済み 編集者: しょむ 編集日時 2002-11-28 02:13 ] |
|
投稿日時: 2002-11-28 15:29
返信ありがとうございました。
>grep の仕様によります。 >現に手元の grep (GNU grep 2.5) では、対象ファイルとしてディレクトリを指定しても>エラーメッセージは出ません。 自分のはversion2.5.1なのでそれで表示されなかったようです。 ># 余談ですが、grep $1 -r $2 なんてのもできますし、 ># find $2 -type f -exec grep $1 \{\} \; なんて方法も。 ありがとうございます、色々試してみたいとおもいます。 |
1