ディスク容量が不足している場合にファイルを切り捨てる危険を冒さずに、シェルスクリプトからファイルを書き換える方法は?
この便利な perl ワン ライナーは、test.txt というファイル内のすべての "foo" を "bar" に置き換えます。
perl -pi -e 's/foo/bar/g' test.txt
これは非常に便利ですが...
test.txt が存在するファイル システムのディスク容量が不足している場合、test.txt は 0 バイトのファイルに切り捨てられます。
この切り捨ての発生を回避するための簡単で競合状態のない方法はありますか?
test.txt ファイルを変更せずに残し、ファイル システムの容量が不足している場合にコマンドがエラーを返すようにしたいと考えています。
理想的には、追加のソフトウェアをインストールする必要なく (sed や perl などの「標準的な」UNIX ツールを超えて)、ソリューションをシェル スクリプトから簡単に使用できるようにする必要があります。
ありがとう!