Skip to main content

Jak kompresować pliki za pomocą wiersza poleceń systemu Linux

LGR - Macintosh 128k Vintage Computer Review (Czerwiec 2026)

LGR - Macintosh 128k Vintage Computer Review (Czerwiec 2026)
Anonim

Istnieje wiele różnych sposobów kompresowania plików za pomocą wiersza poleceń systemu Linux. Ten artykuł zawiera praktyczne przykłady pokazujące, jak używać polecenia zip do kompaktowania i porządkowania plików w systemie plików.

Pliki spakowane są używane, gdy zachodzi potrzeba zaoszczędzenia miejsca i kopiowania dużych plików z jednego miejsca do drugiego.

Jeśli masz 10 plików o rozmiarze 100 megabajtów i musisz je przesłać do witryny ftp, transfer może zająć dużo czasu w zależności od szybkości procesora.

Jeśli skompresujesz wszystkie 10 plików do jednego skompresowanego archiwum, a kompresja zmniejszy rozmiar pliku do 50 MB na plik, musisz przesłać tylko połowę danych.

Jak utworzyć archiwum wszystkich plików w folderze

Wyobraź sobie, że masz w folderze piosenki z następującymi plikami MP3:

Autostrada AC / DC do piekła
Noc Prowler.mp3
Uwielbiam głodnego człowieka.mp3
Get It Hot.mp3
Spaceruj po was.mp3
Autostrada do piekła.mp3
Jeśli chcesz krwi, masz ją.mp3
Pokaż w płomieniach.mp3
Dotknij za dużo.mp3
Pokonując krzak.mp3
Girls Got Rhythm.mp3

To proste polecenie systemu Linux, które ilustruje, jak utworzyć archiwum wszystkich plików w bieżącym folderze o nazwie ACDC_Highway_to_Hell.zip:

zip ACDC_Highway_to_Hell *

Tekst przewija ekrany pokazujące pliki podczas ich dodawania.

Jak dołączyć ukryte pliki do archiwum

Poprzednie polecenie jest w porządku do archiwizowania wszystkich plików w folderze, ale zawiera tylko pliki, które nie są ukryte.

To nie zawsze jest takie proste. Wyobraź sobie, że chcesz spakować swój katalog domowy, aby móc wykonać kopię zapasową na dysku USB lub zewnętrznym dysku twardym. Twój folder domowy zawiera ukryte pliki.

Aby skompresować wszystkie pliki, w tym ukryte pliki w folderze, uruchom następujące polecenie:

zip home *. *

Spowoduje to utworzenie pliku o nazwie home.zip z wszystkimi plikami w folderze domowym.

(Musisz być w folderze domowym, aby to zadziałało). Problem z tym poleceniem polega na tym, że zawiera on tylko pliki w folderze macierzystym, a nie foldery, które przenosi nas do następnego przykładu.

Jak zarchiwizować wszystkie pliki i podfoldery w pliku ZIP

Aby uwzględnić wszystkie pliki i podfoldery w archiwum, uruchom następujące polecenie:

zip -r home.

Jak dodać nowe pliki do istniejącego skompresowanego archiwum

Jeśli chcesz dodać nowe pliki do istniejącego archiwum lub zaktualizować pliki w archiwum, użyj tej samej nazwy pliku archiwum, gdy uruchomisz polecenie zip.

Na przykład wyobraź sobie, że masz folder muzyczny z czterema albumami i tworzysz archiwum o nazwie music.zip, aby zachować kopię zapasową. Teraz wyobraź sobie, że tydzień później pobierzesz dwa nowe albumy. Aby dodać nowe albumy do pliku zip, po prostu uruchom tę samą komendę zip, co w poprzednim tygodniu.

Aby utworzyć oryginalne archiwum muzyczne, uruchom następujący kod:

zip -r muzyka / home / twoja nazwa / muzyka /

Aby dodać nowe pliki do archiwum, ponownie uruchom to samo polecenie.

Jeśli plik zip ma listę plików w nim zawartych i jeden z plików na dysku został zmieniony, to zmieniony plik jest aktualizowany w pliku zip.

Jak zaktualizować istniejące pliki w spakowanym archiwum

Jeśli masz plik ZIP, który powinien zawierać te same nazwy plików za każdym razem i chcesz zaktualizować ten plik o wszelkie zmiany, które zostały wprowadzone do tych plików, to -fa przełącznik pomaga to zrobić.

Na przykład wyobraź sobie, że masz spakowany plik z następującymi plikami:

/ home / yourname / documents / file1
/ home / yourname / documents / file2
/ home / yourname / documents / file3
/ home / yourname / documents / file4
/ home / yourname / documents / file5
/ home / yourname / documents / file6

Teraz wyobraź sobie, że w ciągu tygodnia dodałeś dwa nowe pliki i zmieniono dwa pliki, dzięki czemu folder / home / yourname / documents wygląda teraz tak:

/ home / yourname / documents / file1
/ home / yourname / documents / file2
/ home / yourname / documents / file3
/ home / yourname / documents / file4 (updated)
/ home / yourname / documents / file5 (updated)
/ home / yourname / documents / file6
/ home / yourname / documents / file7
/ home / yourname / documents / file8

Po uruchomieniu następującego polecenia plik zip będzie zawierał zaktualizowane pliki (plik 4 i plik5), ale plik 7 i plik 8 nie zostaną dodane.

zip nazwa_zip -f -r / home / Twoja nazwa / dokumenty

Jak usunąć pliki ze spakowanego archiwum

Stworzyłeś więc masywny plik zip z setkami plików i teraz zdajesz sobie sprawę, że w pliku zip są cztery lub pięć plików, których tam nie potrzebujesz. Bez konieczności ponownego archiwizowania wszystkich plików, możesz po prostu uruchomić polecenie zip za pomocą -re przełączać w następujący sposób:

zip zipfilename -d nazwa pliku w archiwum

Na przykład, jeśli masz plik w archiwum o nazwie home / documents / test.txt, usuń go za pomocą tego polecenia:

zip nazwa-pliku zip -d home / documents / test.txt

Jak kopiować pliki z jednego pliku zip do drugiego

Jeśli masz pliki w jednym pliku zip i chcesz skopiować je do innego pliku zip bez wcześniejszego rozpakowywania i ponownego załączenia, użyj -u przełącznik.

Załóżmy, że masz plik zip o nazwie "variousmusic.zip" z muzyką różnych artystów, z których jeden to AC / DC. Możesz skopiować utwory AC / DC z pliku variousmusic.zip do pliku ACDC.zip, używając następującej komendy:

zip variousmusic.zip -U --out ACDC.zip "Back_In_Black.mp3"

Powyższe polecenie kopiuje plik "Back_In_Black.mp3" z differentmusic.zip na ACDC.zip.Jeśli plik ZIP, do którego kopiujesz, nie istnieje, zostanie utworzony.

Jak korzystać z dopasowywania wzorców i orurowania w celu utworzenia archiwum

Następny przełącznik jest bardzo przydatny, ponieważ pozwala na użycie innych poleceń do wstawiania plików do pliku zip. Załóżmy, że chcesz utworzyć plik o nazwie lovesongs.zip, który zawiera każdą piosenkę, która zawiera słowo love w tytule.

Aby znaleźć pliki z miłością w tytule, możesz użyć następującego polecenia:

znajdź / home / yourname / Music -name * love *

Powyższe polecenie nie jest w 100% doskonałe, ponieważ odbiera takie słowa, jak "koniczyna", ale masz pomysł. Aby dodać wszystkie zwrócone wyniki z powyższego polecenia do pliku zip o nazwie lovesongs.zip, uruchom poniższe polecenie:

znajdź / home / yourname / Music -name * love * | zip lovesongs.zip - @

Jak utworzyć podzielone archiwum

Jeśli tworzysz kopię zapasową komputera, ale jedynym nośnikiem, na którym można wykonać kopię zapasową, jest zestaw pustych dysków DVD, to masz wybór. Możesz przechowywać pliki ZIP, dopóki plik ZIP nie będzie miał 4,8 gigabajta i nagrać dysk DVD, lub możesz utworzyć coś, co nazywa się archiwum dzielonym, które tworzy nowe archiwa w zestawie po osiągnięciu określonego limitu.

Na przykład:

zip mymusic.zip -r / home / myfolder / Music -s 670m

Jak dostosować raport postępu procesu Zipping

Istnieją różne sposoby dostosowywania wyników wyświetlanych podczas wykonywania zip.

Dostępne przełączniki są następujące:

  • -db = wyświetla, ile bajtów zostało spakowanych i ile jeszcze zostało do zrobienia
  • -dc = wyświetla liczbę zip skompresowanych plików i liczbę pozostałych
  • -dd = wyświetla kropki na każde 10 MB pliku spakowanego
  • -ds = określa częstotliwość wyświetlania kropek
  • -du = wyświetla nieskompresowany rozmiar każdego pliku

Na przykład:

zip myzipfilename.zip -dc -r / home / music

Jak naprawić plik ZIP

Jeśli masz zepsute archiwum zip, możesz spróbować naprawić je za pomocą -FA polecenie, a jeśli to się nie powiedzie, to FF dowództwo.

Jest to użyteczne, jeśli utworzyłeś archiwum dzielone używając -s przełączyć i zgubiłeś jeden z plików archiwum.

Na przykład spróbuj najpierw:

zip -F myfilename.zip --out myfixedfilename.zip

i wtedy

zip -FF myfilename.zip --out myfixedfilename.zip

Jak zaszyfrować archiwum

Jeśli masz poufne informacje, które chcesz przechowywać w pliku zip, użyj -mi polecenie do szyfrowania. Zostaniesz poproszony o podanie hasła i powtórzenie hasła.

Na przykład:

zip myfilename.zip -r / home / wikileaks -e

Jak pokazać, co zostanie spakowane

Jeśli wiesz, że zamierzasz utworzyć duże archiwum, upewnij się, że odpowiednie pliki zostaną dodane do pliku zip. Możesz zobaczyć oczekiwane wyniki polecenia zip, określając znak -sf przełącznik.

Na przykład:

zip myfilename.zip -r / home / music / -sf

Jak przetestować archiwum

Po utworzeniu kopii zapasowej plików w pliku zip kuszące jest oszczędzanie miejsca na dysku poprzez usunięcie oryginalnych plików. Zanim to zrobisz, dobrze jest przetestować plik zip działa poprawnie.

Możesz użyć -T przełącz, aby sprawdzić, czy plik zip jest prawidłowy.

Na przykład:

zip myfilename.zip -T

Wynik tego polecenia, gdy archiwum jest nieprawidłowe, może wyglądać mniej więcej tak:

  • zip ostrzeżenie: brak podpisu końcowego - prawdopodobnie nie jest to plik zip

Pamiętaj, możesz spróbować użyć polecenia -F, aby naprawić uszkodzone pliki zip.

Warto zauważyć, że -T może generować fałszywe alarmy, ponieważ mówi, że plik zip jest uszkodzony, nawet jeśli go otworzysz, możesz wyodrębnić wszystkie pliki.

Jak wykluczyć pliki

Czasami chcesz wykluczyć określone pliki z pliku zip. Na przykład, jeśli skopiujesz pliki z telefonu lub aparatu cyfrowego, masz mieszankę filmów i zdjęć. Możesz spakować zdjęcia do photos.zip i filmów do video.zip.

Oto jeden ze sposobów na wykluczenie filmów podczas tworzenia pliku photos.zip

zip photos.zip -r / home / photos / -x * .mp4

Jak określić poziom kompresji

Gdy kompresujesz pliki do pliku zip, system decyduje, czy skompresować plik, czy po prostu zapisać. Pliki MP3 na przykład są już skompresowane, więc nie ma sensu ich kompresować; zwykle są przechowywane tak, jak w pliku zip.

Można jednak określić poziom kompresji między 0 a 9, aby skompresować plik dalej. To zajmuje więcej czasu, ale może przynieść znaczną oszczędność miejsca.

zip myfiles.zip -r / home -5