Jak używać interfejsu 7-Zip CLI dla systemu Windows do tworzenia archiwów .tar.gz?


30

Jak korzystać z interfejsu 7-Zip CLI ( 7za.exe ) w systemie Windows do tworzenia archiwów .tgz, tak jak tar zcvf archive.tgz source_filesw systemie Linux?

Odpowiedzi:


35

Jeśli chcesz to zrobić w jednej linijce:

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

-anPrzełącznik mówi 7-Zip nie do analizowania wiersza polecenia archive_name parametr, który jest zwykle wymagane.


Uwaga: jeśli nie masz 7za.exe w folderze 7zip, możesz również użyć 7zg.exe, jeśli jest dostępny
anion

1
W moim przypadku nie było tam ani 7za.exe, ani 7zg.exe, ale 7z.exe.
JoL

tar jest wymagany, ponieważ tgz lub tar.gz to plik tar, który został skompresowany gzip. 7zip po prostu nie ma możliwości zrobienia tego wszystkiego w jednym kroku, więc musisz przesłać dane wyjściowe polecenia, które parsuje twoje pliki do tego, który zgzipuje twój tar ^^. To dlatego, gdy yopu otwiera plik tar.gz w 7zip, widzisz w nim plik tar.
DGoiko

@DGoiko Znam tę część - po prostu nie rozumiem, dlaczego archive.tar nazwa pliku jest wymagana, gdy dane są przesyłane strumieniowo na standardowe wyjście.
afrazier

Rozumiem. Myślałem, że gz potrzebuje wewnętrznej nazwy pliku, aby być poprawnie wyświetlanym, ale może się myliłem.
DGoiko

5

Jeśli tylko kompresujesz 1 plik do archiwum, to 7za a archive.tgz source_filezadziała.

Jeśli chcesz dodać wiele plików do tar, musisz to zrobić w dwóch krokach: Utwórz tar, a 7za a archive.tar source_files następnie skompresuj7za a archive.tgz archive.tar

I opcjonalnie usuń „tymczasową” smołę del archive.tar

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.