Bashで「-」を含むパラメータを渡すには? [コピー]

Bashで「-」を含むパラメータを渡すには? [コピー]

このコマンドを使用してファイルから文字列を取得しようとしていますgrep。しかし、コマンドは大文字と小文字を無視するようなオプションを-R削除しようとしていると思います。-i

答え1

-eオプションは、grep「次の引数はモードです」と明示的に言うことです。

grep -e -R file

-R上記のコードは、という名前のファイルから行の一致を検索しますfile

この-eオプションはコマンドラインに複数回表示され、grep指定されたすべてのモードを使用します。どの方法)。

答え2

前述の回答だけでなく--オプションの終わりを通知するために使用されるため、後で望ましくないと解釈されず、パラメータに似ている可能性があるパターンを使用できます。

$ echo -R | grep -- '-R'
-R

答え3

努力する脱出するその役割は次のとおりですgrep \\-R myfile.txt

例:

$ touch test.txt
$ echo "-R" >> ./test.txt
$ cat test.txt
-R
$ grep \\-R ./test.txt
-R

関連情報