巨大なtarファイルから分割された次のファイルがあります。
linuxaa
linuxab
linuxac
.
.
.
注 - 次のファイルのみがあります。linux[a-b][a-z]
またはファイルだけを圧縮したいですlinux-xxxx
。linux_xxx
linux [a-b[a-z]
通常私はこれを使ってtar.gz
ファイルを再生成します。
cat linux[a-b][a-z] > centos7-rpm.tar.gz
ほとんどの場合、tar.gz
正常に作成されました
しかし、時にはこのファイルが破損しているようです。
ファイルを生成する他の安全な方法はありますかtar.gz
? 、
tarファイルに問題があると、次のエラーが発生します。
gzip: stdin: invalid compressed data--format violated
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now
failed while , error 2
重要なヒント
私たちができることcat linux* > centos7-rpm.tar.gz
linux-tool
圧縮したくない他のファイルがあるので
答え1
ファイルリストが正しくソートされない場合があります。あなたは試すことができます:
cat linux* > centos7-rpm.tar.gz
または
cat linux?? > centos7-rpm.tar.gz
文字で始まる他のファイルがある場合linux
ただし、順序を決定するには、以下を試してください。
cat $(ls -1 linux[a-b][a-z]|sort) > centos7-rpm.tar.gz
ls -1
1行に1つの出力を生成します。sort
ファイルリストが正しくソートされていることを確認します(splitコマンドを使用してリストを生成する場合)。