「expregex」行のファイルがあります。このファイルには、他のテキストを含む行を含めることができます。例えば:
exp [a-zA-Z].*\.sh~$
exp test
tmp too
exp tmp
trololo
このファイルのコンテンツをgrepする必要があります。egrep file '^exp ' | sed 's/^exp //'
結果は次のとおりです。
[a-zA-Z].*\.sh~$
test
tmp
しかし、このgrepの結果を|で区切る必要があります。\nの代わりに
[a-zA-Z].*\.sh~$|test|tmp
この結果を別のgrep正規表現として使用する必要があるためです。たとえば、ネストされたgrepと一致するファイルを印刷するには:
ls | egrep "`egrep file '^exp ' | sed 's/^exp //'\`"
ネストされたgrepの後| sed置換
ls | egrep "[a-zA-Z].*\.sh~$|test|tmp"
または、ファイルからregexをエクスポートして、フィルターファイルに使用するためのより良い方法はありますか?
ケント:これを代用に使用するにはどうすればよいですか?私はそれが次のようだと思います:
ls | egrep "`awk '/^exp /{sub(/^exp /,"");s=(s?s"|":s) sprintf("%s",$0)}END{print s}' file`"
しかし、私はおそらく間違っています。