私はFreeBSD grepバージョン2.5.1を使用しており、grepがstdinからパターンを読み取ることができるようにしたいと思います。私が使用した他のバージョンのgrepでは、-
この機能を指定できます。しかし、私のバージョンではこのオプションは認識されません。 「manページ」で私が見逃した代替オプションはありますか?それとも、FreeBSD grep 2.5.1はこの機能をサポートしていませんか?
答え1
grep
「他のバージョン」があなたが意味するものだと思います。牛に似た一種の栄養grep
そして、あなたが言ったように動作するように主張を-f
許可するオプションを検討しています。-
BSDはgrep
これをサポートします-f
が、引数として実際のファイルが必要です。それは実際に-
議論として機能しません。
すべてが失われるわけではありません。grep
コマンド置換を使用してパターンを渡すことができます。
$ grep `my-pattern-producing-command` some-files*
またはパターンがファイルにある場合:
$ grep `head -1 my-pattern-file.txt` some-files*
または単にGNUをインストールしてくださいgrep
:
$ cd /usr/ports/textproc/gnugrep
$ sudo make install clean
しかし、SysVはgrep
これをまったくサポートしていないので、-f
それに依存することに注意すべきもう一つの理由になります。つまり、Solarisにはgrep
デフォルトでGNUが付属しています。実際、grep
SolarisでSysVを使用するには多くの努力が必要です。