web-dev-qa-db-ja.com

Linuxシェル:bz2アーカイブをxzに再パックします

ファイルの日付スタンプとそのchmod-chown設定を保存したい場合、.bz2アーカイブを.xz形式に再パックするにはどうすればよいですか?

標準のツールとxz、lzma、p7Zipを使用できます

4
osgx

これを2つの部分に分割する必要があります

1)billc.cnが回答したbz2からxzに変換します

2)bz2と一致するように、xzファイルの所有権、権限、およびタイムスタンプを修正します。

chown "`stat --printf '%u:%g' file.bz2`" file.xz
chmod "`stat -c '%a' file.bz2`" file.xz
touch -a -d "`stat -c '%x' file.bz2`" file.xz
touch -m -d "`stat -c '%y' file.bz2`" file.xz
2
brightlancer

bzcatを使用してbzip2圧縮を削除しますが、tar形式を保持してから、結果をxzにパイプします。

bzcat file.tar.bz | xz > file.tar.xz

通常どおり、圧縮オプションをxzに追加できますが、ファイル名を省略して、標準入力が使用されるようにします。

5
billc.cn