私は文字列を再帰的に検索しようとしていますがgrep
、これが得られます:
$ grep -r "stuff" *
grep: unrecognized option '---corporate-discount.csv'
Usage: grep [OPTION]... PATTERN [FILE]...
Try 'grep --help' for more information.
Bashが-
引数として始まるファイルを渡さないようにするにはどうすればよいですか?
4
関連:名前が「-」(ハイフン、ダッシュまたはマイナス)で始まるファイルを削除するにはどうすればよいですか?
—
スチールドライバー
シェルがこれらのファイルを渡さないようにしたくないのですか?問題は
—
ドンホルゴ
grep
、それらがオプションではないことをどのように伝えるかということです。
...明確にするために、bashはオプションとして扱われる結果と引数として扱われる結果を制御しません。それは受信プログラムの制御下にあります。たとえば、
—
チャールズダフィー
subprocess.Popen(['grep', '-r', '-e' 'stuff', '--corporate-discount.csv'])
Pythonではどこにもbashがなくても同じ動作をします。
—
ワイルドカード
@Wildcardは、
—
チャールズダフィー
--
オプションの最後にsigilを使用することも完全に合理的です。POSIXユーティリティの構文ガイドラインでは、遵守する必要があります。ガイドライン#10を参照してください。(確かに、すべてのプログラムがPOSIXガイドラインに従っているわけではありませんが、答えは問題のあるプログラムの作者をつなぎとめるか、業界から排除することです)。