私は一般にgrepの代わりにperl one linersを使ってファイルを検索します。例えば処理中のファイルの名前をPerlのワンライナーで印刷するにはどうすればよいですか?
#include <stdio.h>
perl -ne "print if(/#include\s*[\"<]stdio.h/)" */*.[ch]
を含むすべての場所のプリントを以下しかし、私はこれらの行を持って、ファイル名を印刷する方法を見つけることができませんでした。私は$ARGV[0]
を印刷しようとしましたが、無駄です。
このような行を含むファイル名はどうやって印刷しますか?
grepを使用してください。そして、あなたの問題は消える(grep -l) –
@depeszもっと複雑なことが必要になるまで、それは消えてしまいます。 –
私の答えを取り消す:$ _は、引用符などにもかかわらず、シェルによって解釈されています。echo $ _:varには最後のコマンドの2番目の部分が含まれています。必須。 –