2

次のコマンドを入力するとします。

find /etc/info/ -name ".c" | xargs -I {} grep -l 'importantFile' {}

これで、関心のあるすべてのファイルが得られました。これらのファイルには、接尾辞 .c とキーワード「importantFile」が付いています。現在のディレクトリ (名前: フォルダ) の 1 つに移動するにはどうすればよいですか?

私は試した:

find /etc/info/ -name ".c" | xargs -I {} grep -l 'importantFile' {} mv{} ./folder

そしてそれはうまくいきません。助けてください:p

4

2 に答える 2

2

検索に固執したい場合は、次のようなものが機能するはずです。

xargs -r0 --arg-file <(find . -name "*.c" -type f -exec grep -lZ importantFile {} +
  ) mv -i --target-directory ./folder

これを試して

grep -lir 'importantFile' /etc/info/*.c | xargs mv -t ./folder
于 2013-06-30T16:49:50.403 に答える