出力で sed を実行しようとしています。find | grep \.ext$
ただし、sed には入力ファイルと出力ファイルが必要です。
出力行を変数に保存するか、sedに渡すにはどうすればよいですか?
ベストアンサー1
本当でもsed
そうでもない必要入力ファイル。
Sedは、入力ストリーム(ファイル)で基本的なテキスト変換を実行するために使用されるストリームエディタです。またはパイプから入力)。 (渡す)
しかし、あなたの場合は、ストリームではなくファイルで作業したいので、必要です。
ここではこれは必要ありません。次に、見つかったすべてのファイルに対して実行するには、見つかったすべてのファイルに対して実行コマンドを使用grep
します。find -name "*.ext"
sed
find -exec
find -name "*.ext" -exec sed -i '...' {} \;
何らかの理由でファイル名を使用したい場合grep
(たとえば、入力がファイル名でない場合find
)、次のものを使用できますxargs
。
grep \.ext$ list_of_files | xargs -I{} sed -i '...' {}