Polecenia zip i unzip w Linux

Polecenia zip i unzip w Linux

ZIP to popularne polecenie międzyplatformowe używane do kompresji i archiwizacji danych. Kompresja oszczędza przestrzeń, zmniejszając rozmiar danych, a archiwizacja ułatwia przesyłanie danych, łącząc wiele plików lub katalogów w jednym pliku. Zastanów się, jeśli musimy przenieść 5 plików przez Internet, z których każdy ma rozmiar 50 megabajtów; przesyłanie wszystkich plików jeden po drugim może potrwać dużo czasu. Kompresowanie plików w celu zmniejszenia rozmiaru do 25 MB, a następnie archiwizacja wszystkich w jednym pliku sprawi, że przesyłanie plików znacznie szybciej będzie. ZIP jest najczęściej używanym narzędziem do archiwizacji i kompresji plików, podczas gdy Unzip jest używany do wyodrębniania i dekompresji plików zamków błyskawicznych.

W tym artykule przyjrzymy się poleceniom ZIP i UNZIP w Linux, wraz z ich opcjami i przykładami wiersza poleceń.

Wymagania wstępne

  • Ubuntu lub System Debian
  • Zainstalowane narzędzia ZIP i UNZIP

Notatka: Polecenia wymienione w tym artykule zostały przetestowane na Ubuntu 20.04 LTS (Focal Fossa). Te same polecenia mają również zastosowanie do dystrybucji Debian.

Instalowanie ZIP i UNZIP

Domyślnie pakiety ZIP i UNZIP są instalowane w Ubuntu Systems. Jeśli brakuje ich w systemie, możesz je łatwo zainstalować. Uruchom terminal za pomocą klawiatury CTRL+Alt+T. Następnie, aby zainstalować ZIP, wydać następujące w terminalu:

$ sudo apt instal zip

Aby zainstalować UNZIP, wydać poniższe polecenie w terminalu:

$ sudo apt instinst instinzip

Istnieje kilka scenariuszy, w których możesz być wymagany do zip plików:

  • Aby zaoszczędzić miejsce do przechowywania, ponieważ zamki ściska rozmiar pliku
  • Przesyłanie dużych plików na e-mail
  • Przesyłanie lub pobieranie plików z szybszą prędkością
  • Aby zaoszczędzić przepustowość

Polecenie zip w Linux

Aby utworzyć plik ZIP, musisz podać nazwę archiwum zapinanego na zamek i pliki, które muszą być zawarte w ZIP.

$ ZIP Opcje ZIP_file File1 Plik2…

Pojedynczy plik zip

Aby zapinić na zamek pojedynczy plik o nazwie test testowy.tekst; do pliku zip o nazwie test.zamek błyskawiczny, Poleceniem byłoby:

test $ zip.Zip TestFile.tekst


Powyższe polecenie skompresuje określony plik w bieżącym katalogu, pozostawiając oryginalny plik za sobą.

Aby potwierdzić, czy plik ZIP został utworzony, wydaj polecenie w terminalu poniżej:

$ ls -l

ZIP wiele plików

Możesz także zapinać na błyskawiczne pliki za pomocą polecenia zip. Utwórzmy kilka nazwanych plików testFile1.tekst, testFile2.tekst, testFile3.tekst, I testFile4.tekst Korzystanie z następującego polecenia w terminalu:

$ sudo touch TestFile1.TXT TESTFILE2.TXT TESTFILE3.TXT TESTFILE4.tekst

Teraz, aby zapinać te pliki w jednym pliku, o nazwie akta.zamek błyskawiczny, Wydaj następujące polecenie w terminalu:

Pliki zip.Zip TestFile1.TXT TESTFILE2.TXT TESTFILE3.TXT TESTFILE4.tekst

Możesz także użyć karty Wildcard, aby określić wiele plików o tym samym rozszerzeniu. Na przykład, aby zapinać wszystkie pliki kończące się .Rozszerzenie TXT w pliku zip, o nazwie Files1.Zip, wydaj następujące polecenie w terminalu:

$ ZIP Files1.zamek błyskawiczny *.tekst

Zapnij plik do innego katalogu

Jeśli chcesz zapakować plik do jakiegoś katalogu innego niż bieżący katalog, użyj następującej składni:

$ zip/ścieżka/do/katalog.ZIP_file nazwa pliku

Na przykład, aby zip test testowy.tekst plik do dokumentów/ dokumentów/ katalogu wymienionych jako test.zamek błyskawiczny, Poleceniem byłoby:

$ zip dokumenty/dokumenty/test.Zip TestFile.tekst

Dodaj plik do istniejącego zamka

Możesz także dodać plik do wcześniej istniejącego pliku pocztowego. Użyj następującej składni, aby to zrobić:

$ zip -u zip_file nazwa pliku

Powiedzmy, że masz plik zip (pliki1.zamek błyskawiczny) i chcesz dołączyć jeszcze jeden plik (testFile4.tekst) W nim polecenie w tym przypadku byłoby:

$ zip -u files1.Zip TestFile4.tekst

Usuń plik z pliku zip

Podobnie możesz również usunąć plik z już istniejącego pliku pocztowego. Użyj następującej składni, aby to zrobić:

$ zip -d Zip_file nazwa pliku

Powiedzmy, że masz plik zip (pliki1.zamek błyskawiczny) i chcesz usunąć plik (testFile1.tekst) Z niego polecenie w tym przypadku byłoby:

$ zip -d pliki1.Zip TestFile1.tekst

Pliki zip w trybie cichym

Jeśli nie chcesz wyświetlać danych wyjściowych polecenia zip, użyj opcji -Q (cicha) z poleceniem ZIP w następujący sposób:

$ zip -q zip_file nazwa pliku

Na przykład, podczas gdy przekłada się na przeliczanie pliku.TXT, możesz stłumić wyjście za pomocą następującego polecenia:

$ zip -q test.Zip TestFile.tekst

Na poniższym zrzucie ekranu możesz zobaczyć wyjście polecenia zip, które nie zostało wyświetlone na terminalu.

Usuwanie oryginalnych plików po zapinaniu

Domyślnie ZIP przechowuje oryginalny plik wraz ze skompresowanym plikiem. Jednak użycie -M Opcja z poleceniem ZIP, możesz usunąć oryginalne pliki po utworzeniu pliku zapinanego.

$ zip -m Zip_file nazwa pliku

Na przykład następujące polecenie usunie test testowy.tekst Po utworzeniu pliku zapinanego, test.zamek błyskawiczny.

test $ zip -m.Zip TestFile.tekst

Katalogi zip

Aby zapakować katalogi w systemie Linux, użyj -R (Recursive) Opcja z poleceniem ZIP. -R Opcja zapinnie katalogi rekurencyjnie, i.mi., w tym zawartość podlokdaryzmów.

$ zip -r zip_file DirectoryName

Na przykład, aby zamykać Dokumenty katalog rekurencyjnie do test.zamek błyskawiczny Plik, poleceniem byłoby:

$ zip -r test.dokumenty zip/

To polecenie zapinnie katalog dokumentów, wraz ze wszystkimi podkładnikami i plikami zawartymi w nim.

Ustawienie poziomu kompresji

Możesz także ustawić poziom kompresji, aby zastosować się do zamykanych plików. Poziom kompresji wynosi od 0 do 9, gdzie 6 jest wartością domyślną, 0 jest najniższą wartością, a 9 jest najwyższą wartością kompresji.

Na przykład, aby zapinać wszystkie pliki tekstowe do pliki1.zamek błyskawiczny Korzystając z najwyższej wartości kompresji, poleceniem byłoby:

$ zip -9 pliki1.zamek błyskawiczny *.tekst


Podobnie, aby zapinać wszystkie pliki tekstowe do pliki2.zamek błyskawiczny Korzystanie z najniższej wartości kompresji -0, Poleceniem byłoby:

$ zip -0 pliki2.zamek błyskawiczny *.tekst


Poniżej znajduje się wyjście LS polecenie po utworzeniu plików zip. Jeśli porównamy rozmiary obu plików zip, możesz zobaczyć pliki1.Zip, który został skompresowany za pomocą poziomu kompresji 9, ma mniejszy rozmiar w porównaniu z plikami2.Zip, który został ściśnięty za pomocą poziomu kompresji 0.

Utwórz plik zip chroniony hasłem

Możesz także utworzyć chronione hasłem pliki pocztowe za pomocą -mi Opcja z poleceniem ZIP w następujący sposób:

$ zip -e zip_file nazwa pliku

Na przykład następujące polecenie zapinnie wszystkie pliki tekstowe w pliki3.zamek błyskawiczny, Następnie poproś o hasło. Ustaw każde hasło i naciśnij Enter. Następnie zweryfikuj to hasło, ponowne jego ponowne pisanie i naciskając Enter.

$ zip -e pliki3.zamek błyskawiczny *.tekst

Dodawanie haseł do plików ZIP z ZipCloak

W poprzednim przykładzie utworzyliśmy plik pocztowy chroniony hasłem. Ale co, jeśli utworzyłeś plik zip i zapomniałeś ustawić hasło. Za pomocą polecenia ZipCloak możesz w dowolnym momencie ustawić hasło na plik zip.

$ zipcloak zip_file

Na przykład, aby ustawić hasło do już utworzonego pliku pocztowego akta.zamek błyskawiczny, Poleceniem byłoby:

Pliki $ zipcloak.zamek błyskawiczny

Zostaniesz poproszony o hasło. Wpisz każde hasło i naciśnij Wchodzić. Następnie zweryfikuj to hasło, ponowne jego pisanie i naciskając Wchodzić.

Wyświetl szczegóły pliku za pomocą polecenia ZipDetails

Polecenie ZipDetails pokazuje szczegółowe informacje o pliku zapinanym. Informacje, które wyświetla, dotyczą struktury rekordu, a nie ze skompresowanych danych. Aby znaleźć szczegółowe informacje o pliku zapinanym, wpisz ZipDetails, a następnie nazwę pliku zapinanego, jak pokazano poniżej:

$ zipdetails zip_file

Na przykład, aby znaleźć szczegółowe informacje o pliku zapinanym, test.zamek błyskawiczny, Poleceniem byłoby:

Test $ zipdetails.zamek błyskawiczny

W wyjściu zobaczysz wiele informacji o swoim pliku zapinanym.

Wyszukaj w pliku za pomocą polecenia ZipGrep

Polecenie ZipGrep pozwala nam wyszukiwać dany tekst w plikach w pliku zapinanym bez wyodrębnienia. Jeśli plik zip jest chroniony hasłem, musisz najpierw wpisać dla niego hasło. Aby wyszukać tekst w pliku zip, użyj następującej składni:

$ zipgrep wyrażenie zip_file

Na przykład, aby wyszukać, które pliki w pliku ZIP test.zamek błyskawiczny zawiera słowo wejście, Poleceniem byłoby:

$ ZipGrep Gateway Test.zamek błyskawiczny

Wyjście jest następujące. Możesz zobaczyć dwa pliki IPList.tekst I IPList w środku test.zamek błyskawiczny zawiera słowo bramę.


Aby wyszukać tekst z określonego pliku w pliku zip, możesz go również dodać:

$ ZipGrep wyrażenie ZIP_file nazwa pliku

Na przykład następujące polecenie wyszukiwa słowo wejście Z tylko określonego pliku IPList wewnątrz pliku zip test.zamek błyskawiczny:

$ ZipGrep Gateway Test.dokument zip/dokumenty/iplist

Wyświetl informacje za pomocą polecenia Zipinfo

Polecenie Zipinfo w systemie Linux wymienia pliki zawarte w pliku zip wraz z ich uprawnieniami, typem kompresji, oryginalnym rozmiarem, datą i znaczkiem czasowym. Aby wyświetlić informacje o określonym pliku pocztowym, wpisz Zipinfo, a następnie nazwę pliku, jak pokazano poniżej:

$ Zipinfo Filename

Poniższe polecenie wyświetli informacje o pliku ZIP pliki1.zamek błyskawiczny:

$ Zipinfo Files1.zamek błyskawiczny

Podziel plik za pomocą polecenia Zipplit

Czasami rozmiar pliku zip jest zbyt duży, że nie możesz go przesłać ani wysłać jako załącznika z powodu ograniczeń wielkości. Za pomocą polecenia ZipSplit możesz podzielić pliki ZIP na mniejsze pliki, które są łatwiejsze do przesyłania. Aby podzielić plik ZIP na mniejsze pliki, z rozmiarem nie dłużej niż składnia byłaby:

$ zipplit -n plik zip

to maksymalny rozmiar dla podzielonych plików.

Na przykład poniższe polecenie podzielone test.zamek błyskawiczny na mniejsze pliki o rozmiarze nie dłużej niż 104857600 bajtów (104 MB).

$ zipplit -n 104857600 test.zamek błyskawiczny

Oto dane wyjściowe powyższego polecenia. test.zamek błyskawiczny Plik jest podzielony na trzy pliki, które są sekwencyjnie nazwane test1.zamek błyskawiczny, test2.zamek błyskawiczny, I test3.zamek błyskawiczny, odpowiednio.

Jeśli uruchomisz LS polecenie, zobaczysz wszystkie trzy podzielone pliki pocztowe wraz z oryginalnym plikiem pocztowym.

Dodaj lub wyświetl komentarze w pliku zip z Zipnote

Za pomocą polecenia Zipnote możesz dodać, przeglądać i edytować komentarze w pliku zip. Aby wyświetlić komentarze, użyj następującego polecenia:

$ zipnote zip_file

Zastąp zamek błyskawiczny plik z rzeczywistą nazwą pliku zip.

Jeśli nie ma żadnych komentarzy, zobaczysz następujący widok domyślny:


Aby dodać komentarze, najpierw musisz przekierować dane wyjściowe Zipnote do pliku komentarzy. Użyj następującego polecenia, aby to zrobić:

$ zipnote zip_file> komentarze

Na przykład, aby dodać komentarze do pliki1.zamek błyskawiczny, Poleceniem byłoby:

$ Zipnote Files1.Zip> Komentarze

Teraz edytuj uwagi Plik za pomocą następującego polecenia:

$ sudo nano komentarze

Dla każdego pliku dodaj swoje komentarze nad wierszami, które mówią @ (komentarz powyżej tego wiersza),Następnie zapisz i wyjdź z pliku. Dodaliśmy dwa komentarze w pliku komentarzy, jak pokazano na zrzucie ekranu poniżej.


Teraz napisz komentarze do swojego pliku pocztowego za pomocą następującego polecenia:

$ zipnote -w zip_file < comments

W naszym przypadku polecenie byłoby;

$ zipnote -w pliki1.zamek błyskawiczny < comments

Teraz możesz sprawdzić, czy komentarze zostały dodane, wydając następujące polecenie w terminalu:

$ zipnote zip_file

Pokaż pomoc

Aby wyświetlić pomoc dotyczącą polecenia zip, użyj następującego polecenia:

$ zip - -help

Możesz także odwiedzić stronę Man Zip Utility za pomocą następującego polecenia:

$ MAN ZIP

Polecenie UNZIP w Linux

Za pomocą polecenia UNZIP możesz łatwo wyodrębnić zawartość z pliku zip. Aby rozpakować plik, użyj następującej składni:

$ Unzip Options Zip_file

Rozpakuj pojedyncze pliki zip

Aby rozpakować pojedynczy plik zip, powiedzmy, że test.Zip, poleceniem byłoby:

$ Unzip Test.zamek błyskawiczny

Rozpakuje plik w bieżącym katalogu.

Rozpakuj plik do innego katalogu

Możesz także rozpakować plik do innego katalogu, a nie do bieżącego katalogu za pomocą opcji -D w następujący sposób:

$ Unzip Zip_file -d/ścieżka/do/katalog

Aby rozpakować plik zip, test.zamek błyskawiczny Do Dokumenty, Katalog, poleceniem byłoby:

$ Unzip Test.dokumenty zip -d/

Rozpakuj wiele plików

Rozważmy wiele plików zip w bieżącym katalogu, które chcesz rozpakować. Możesz rozpakować je wszystkie za pomocą jednego polecenia w następujący sposób:

$ Unzip '*.zamek błyskawiczny'

To polecenie rozpakuje wszystkie pliki ZIP przebywających w bieżącym katalogu.

Tłumij wyjście podczas używania UNZIP

Podobnie do polecenia zip, możesz również ukryć wyjście polecenia UnZIP za pomocą -Q Opcja w następujący sposób:

$ unzip -q zip_file

Wyklucz pliki za pomocą UNZIP

Jeśli chcesz rozpakować plik zip, ale nie chcesz wyodrębnić określonego pliku, użyj -X Opcja poniżej:

$ Unzip Zip_file -x nazwa pliku

Na przykład mamy zamek błyskawiczny fitest.zamek błyskawiczny zawierający w nim trzy pliki. Poniższe polecenie rozpakuje wszystkie pliki oprócz jednego pliku raport.tekst:

$ Unzip Test.Zip -x Raport.tekst

Pliki pocztowe chronione hasło

Aby rozpakować plik zip chroniony hasłem bez monitowania, użyj -P Opcja, a następnie hasło do pliku:

$ Unzip -p plik zip

Na przykład mamy plik zip, test.zamek błyskawiczny, To jest chronione hasłem „cyna". Aby wyodrębnić ten plik, poleceniem byłoby:

$ Unzip -p Test Tin.zamek błyskawiczny

Nadpisanie plików pocztowych

Jeśli rozpakujesz plik do miejsca, w którym istniały już wyodrębnione pliki, zostaniesz poproszony o: zastąpienie bieżącego pliku, pominięcie rozpakowania bieżącego pliku, zastąpienie wszystkich plików, pomiń rozpakowanie wszystkich plików lub zmień nazwę pliku.


Aby zastąpić wszystkie istniejące pliki bez monitowania, użyj -o Opcja w następujący sposób:

$ unzip -o zip_file

Wymień zawartość zip

Używając -L Opcja z poleceniem UNZIP, możesz wymienić zawartość pliku zip bez jej wyodrębnienia.

$ unzip -l zip_file

Przykład:

$ Unzip -l Test.zamek błyskawiczny

Poniżej znajduje się dane wyjściowe powyższego polecenia, które wymienia pliki zawarte w pliku ZIP test.zamek błyskawiczny, Wraz z ich nazwami, oryginalny rozmiar pliku, datę i znaczniki czasu.

Wyświetl szczegółowe informacje

Aby wyświetlić szczegółowe informacje bez wyodrębnienia pliku ZIP, użyj opcji -v w następujący sposób:

$ unzip -v zip_file

Przykład:

$ Unzip -v Test.zamek błyskawiczny

Poniżej znajduje się wyjście powyższego polecenia, które wymienia pliki zawarte w ramach test.zamek błyskawiczny, Wraz z ich nazwami, oryginalny rozmiar pliku, rozmiar sprężonego, metoda kompresji, współczynnik kompresji, data i znaczniki czasu.

Sprawdzanie błędów w archiwum

Z opcją -t w poleceniu UNZIP możesz sprawdzić, czy plik ZIP jest prawidłowy i nie zawiera żadnych błędów.

$ Unzip -t Test1.zamek błyskawiczny

Przykład:

$ Unzip -t Test1.zamek błyskawiczny

Powyższe polecenie sprawdź błędy w test1.zamek błyskawiczny Plik i wyświetla wyniki. Poniższe wyjście pokazuje, że w pliku skompresowanym nie ma błędu.

Pokaż pomoc

Aby wyświetlić pomoc dotyczącą polecenia UNZIP, użyj następującego polecenia:

$ Unzip - -Help

Możesz także odwiedzić stronę Unzip Utility Man za pomocą następującego polecenia:

$ Man Unzip

Wniosek

To wszystko, co musisz wiedzieć, aby opanować zip i rozpakować polecenia w Linux. W tym artykule szczegółowo omówiliśmy użycie poleceń ZIP i UNZIP w Linux wraz z różnymi opcjami i przykładami wiersza poleceń.