$rmv
.という巨大なテキストファイルの最初の行を削除したいと思います$filename
。このテキストファイルは大きすぎて、私のハードドライブに2つのコピーを保存できません。
以下は、次の空のファイルを残します$filename
。
tail -n +$rmv "$filename" > "$filename"
$filename
合計を保存するための空き容量が不足しているため、以下を実行できません$filename.tmp
。
tail -n +$rmv "$filename" > "$filename.tmp" && mv "$filename.tmp" "$filename"
重要な場合は、Mac OS X El Capitanを使用しています。
ベストアンサー1
あなたが持っている場合perl
:
{
tail -n +"$rmi"
perl -e 'truncate STDOUT, tell STDOUT'
} <file 1<>file
この方法ではファイルのバックアップがないため、破損が発生するとデータが失われる可能性があります。