Bagaimana cara menggunakan CLI 7-Zip untuk Windows untuk membuat arsip .tar.gz?

30

Bagaimana saya bisa menggunakan 7-Zip CLI ( 7za.exe ) pada Windows untuk membuat arsip .tgz, seperti yang saya gunakan tar zcvf archive.tgz source_filesdi Linux?

f.ardelian
sumber

Jawaban:

35

Jika Anda ingin melakukannya dalam satu baris:

7za.exe a -ttar -so -an source_files | 7za.exe a -si archive.tgz

The -anberalih memberitahu 7-Zip tidak untuk mengurai perintah ARCHIVE_NAME parameter baris yang biasanya diperlukan.

afrazier
sumber
Catatan: jika Anda tidak memiliki 7za.exe di folder 7zip Anda, Anda juga dapat menggunakan 7zg.exe jika tersedia
anion
1
Dalam kasus saya, tidak ada 7za.exe atau 7zg.exe, tetapi 7z.exe ada.
JoL
tar diperlukan karena tgz atau tar.gz adalah file tar yang telah di-gzip. 7zip tidak memiliki kemampuan untuk melakukan semuanya hanya dalam satu langkah, jadi Anda harus menyalurkan output dari perintah yang menguraikan file-file Anda ke file yang gzip tar Anda ^^. Inilah sebabnya mengapa ketika Anda membuka tar.gz di 7zip Anda melihat file tar di dalamnya.
DGoiko
@Diko saya tahu bagian itu - saya hanya tidak mengerti mengapa archive.tar nama file diperlukan saat data dialirkan ke stdout.
Afrazier
Oh begitu. Saya pikir gz memerlukan nama file internal agar dapat ditampilkan dengan benar, tapi mungkin saya salah.
DGoiko
5

Jika Anda hanya mengompresi 1 file ke dalam tarball maka 7za a archive.tgz source_fileakan berfungsi.

Jika Anda ingin menambahkan banyak file ke tar maka Anda perlu melakukannya dalam dua langkah: Buat tar 7za a archive.tar source_files Kemudian kompres7za a archive.tgz archive.tar

Dan, secara opsional, hapus tar 'sementara' del archive.tar

Chris Kent
sumber