0
非常に大きなファイルに対して-iオプション(ファイルを置き換える)でsedを実行すると、処理されたターゲットファイルについて知る方法はありますか。例: /tmpに中間ファイルを作成するか、メモリ上で処理してスワップされたものなどを返します。誰もsed -iの実装を知っていますか?
非常に大きなファイルに対して-iオプション(ファイルを置き換える)でsedを実行すると、処理されたターゲットファイルについて知る方法はありますか。例: /tmpに中間ファイルを作成するか、メモリ上で処理してスワップされたものなどを返します。誰もsed -iの実装を知っていますか?
strace
は、小さなファイルであっても、元のファイルを読み込み、結果を一時ファイルに書き込んだ後、元の名前ファイル。 これは、大容量ファイルの場合と同じ動作であると仮定します。一時ファイルが作成されます。
'sed -i'はテンポラリファイルを作成し、実行時に元のファイルに移動します。ファイルを本当に修正したい場合は、代わりに 'ed'を試してください –
[ソースを見る](http://git.savannah.gnu.org/cgit/sed.git/tree/sed)、または[strace](https://en.wikipedia.org/wiki/Strace)のようなツールを使って、ツールが何をしているかを正確に確認してください。 – larsks
これはプログラミングとは関係がないため、この質問を議論の対象外としています。 – edmz