最後のバイトを除いて、ファイル 1 をファイル 2 にコピーする方法を見つける必要があります。いろいろ調べて dd コマンドにたどり着きましたが、スキップ オプションでは入力ファイルの先頭でのみスキップできます。
ありがとう
答え1
使用方法head -c
:
-c, --bytes=[-]NUM
print the first NUM bytes of each file; with the leading '-',
print all but the last NUM bytes of each file
それで
head -c -1 file1 > file2
答え2
投稿された回答から派生Quora の「Bash でファイルの最後のバイトだけを切り取るにはどうすればいいですか?」:
dd if=file1 of=file2 bs=1 count=$(( $( find file1 -printf '%s' ) - 1 ))
または...
dd if=file1 of=file2 bs=1 count=$(( $( stat -c%s file1 ) - 1 ))
ただし、head -c
他の回答に述べられているように、より簡単な解決策があります。