Grepでは、input_file_nameは0です。

Grepでは、input_file_nameは0です。

マニュアルでは、grepgrepの使い方の一般的な形式は次のとおりです。

grep options pattern input_file_names

特に、「0個以上の入力ファイル名があるかもしれません」と明記されています。

ファイル名が0の場合、どのファイルが検索候補ですか?前任者。grep mystr

答え1

~からman grep:

   file   A pathname of a file to be searched for the patterns. If no file
          operands are specified, the standard input shall be used.

したがって、関連するパイプやリダイレクトがない場合は、ユーザーがテキストを入力するのを待ちます。

答え2

それから読みます標準入力(ファイル記述子0)ファイル名が指定されていない場合。

grep foo

以下と同じ:

grep foo -

これにより、次のような作業が可能になります。

grep foo < file

または:

cmd | grep foo

grep fooターミナルの対話型シェルプロンプトで実行すると、grepターミナルデバイス、つまりキーボードに入力した内容を読みます。

関連情報