コマンドラインからtar.7zファイルを作成するにはどうすればよいですか?


21

昨年から宿題を圧縮したいと思います。Ubuntuのコマンドラインからフォルダー全体をtarおよびzipで圧縮するにはどうすればよいですか(GUIはありません)。

回答:



9

読んでくださいman tar。提供するもの:

     -a, --auto-compress
       use archive suffix to determine the compression program
     -j, --bzip2
     --lzip
     --lzma
     --lzop
     -z, --gzip, --gunzip --ungzip
     -Z, --compress, --uncompress

または、それらのどれもあなたにふさわしくなくstdin、あなたが読む圧縮プログラムを持っているなら、あなたはできる:

tar cf- $HOME | my_compression_program >/tmp/compressed.output

出力は、$HOME(バックアップしているディレクトリにバックアップすると、制約のないファイルの増加につながります)以外の場所に書き込むことに注意してください。

または、あなたは読むことができたman 7z-あなたができるように見える

dir="directory to save"
7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on /tmp/archive.7z $dir 

7

特にUnix / Linuxシステムでは、7zで直接圧縮するのは得策ではありません:7zパーミッションやユーザー/グループ情報を保持しません。だから:最初のタール、そして圧縮。

http://en.wikipedia.org/wiki/7z#Limitationsの 7zip wikiページで報告されているとおり:

制限事項

7z形式はファイルシステムのアクセス許可(UNIX所有者/グループアクセス許可またはNTFS ACLなど)を保存しないため、バックアップ/アーカイブの目的には不適切な場合があります。このためのUNIXライクシステムでの回避策は、7zで圧縮する前にデータをtarビットストリームに変換することです。


5

以下を使用することをお勧めします。

tar cf - foldername | 7z a -si -m0=lzma2 -mx=3 foldername.tar.7z

劇的な高速化のため。

lzma2(-m0=lzma2)(システムで使用可能な最大コアと、-mx=3基本的に高速で十分な「高速圧縮」プリセット()を使用する利点があります。LZMA2は圧縮ですべてのコアを使用するだけでなく、減圧。


1
最後に、あなたの答えで、私が探していたものを見つけました:タスクですべてのプロセッサを使用する能力。
ロニーベスト

0

あなたが使用する必要があります tar -Jchf <Filename>.tar.xz <Files to compress>

-J7zipを同じ、XZ圧縮アルゴリズムを使用しています

-c新しいファイルを作成し、 -hsimlinks -fがファイル名を設定します

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.