Paano Mag-zip o Mag-unzip ng Mga File Mula sa Linux Terminal

Ang mga ZIP file ay isang unibersal na archive na karaniwang ginagamit sa Windows, macOS, at maging sa mga Linux system. Maaari kang lumikha ng isang zip archive o i-unzip ang mga file mula sa isa na may ilang mga karaniwang utos ng Linux terminal.

Ang ZIP Compressed Archive File Format

Salamat sa pangingibabaw ng format na ZIP sa larangan ng Windows, ang mga ZIP file ay marahil ang pinaka-karaniwang anyo ng naka-compress na archive sa mundo.

Habang ang .tar.gz at tar.bz2 na mga file ay karaniwan sa Linux, ang mga gumagamit ng Windows ay malamang na magpadala sa iyo ng isang archive sa format na ZIP. At, kung nais mong i-archive ang ilang mga file at ipadala ang mga ito sa isang gumagamit ng Windows, ang format na ZIP ay ang pinakamadali, pinaka katugmang solusyon para sa lahat.

KAUGNAYAN:Paano Mag-extract ng Mga File Mula sa isang .tar.gz o .tar.bz2 File sa Linux

zip, unzip, at Iba Pang Mga Utilidad

Maaari mong malaman na ang mga operating system na tulad ng Linux at Unix tulad ng macOS ay may mga tool upang payagan kang lumikha ng mga ZIP file at kumuha ng mga file mula sa kanila, na tinatawag na zip at i-unzip. Ngunit mayroong isang buong pamilya ng mga kaugnay na kagamitan tulad ng zipcloak, mga zipdetail, zipsplit , at zipinfo.

Sinuri namin ang ilang mga pamamahagi ng Linux upang makita kung isinama nila ang mga utility na ito sa karaniwang pag-install. Ang lahat ng mga kagamitan ay naroroon sa Ubuntu 19.04, 18.10, at 18.04. Naroroon din sila sa Manjaro 18.04. Kasama ang Fedora 29 zip at i-unzip, ngunit wala sa iba pang mga utility at iyon din ang kaso para sa CentOS.

Upang mai-install ang mga nawawalang elemento sa Fedora 29, gamitin ang sumusunod na utos:

sudo dnf i-install ang perl-IO-Compress

Upang mai-install ang mga nawawalang elemento sa CentOS 7, gamitin ang sumusunod na utos:

sudo yum i-install ang perl-IO-Compress

Kung may alinman sa mga zip utilities na nawawala mula sa isang pamamahagi ng Linux na hindi nabanggit sa itaas, gamitin ang tool sa pamamahala ng package ng pamamahagi ng Linux upang mai-install ang kinakailangang package.

Paano Lumikha ng isang ZIP File gamit ang zip Command

Upang lumikha ng isang ZIP file, kailangan mong sabihin zip ang pangalan ng file ng archive at kung aling mga file ang isasama rito. Hindi mo kailangang idagdag ang extension na ".zip" sa pangalan ng archive, ngunit hindi makakasama kung gagawin mo ito.

Upang lumikha ng isang file na tinawag source_code.zip naglalaman ng lahat ng mga file ng source code ng C at mga file ng header sa kasalukuyang direktoryo, gagamitin mo ang utos na ito:

zip source_code * .c * .h

Ang bawat file ay nakalista habang idinagdag. Ang pangalan ng file at ang dami ng compression na nakamit sa file na iyon ay ipinapakita.

Kung titingnan mo ang bagong archive ng ZIP, maaari mong makita na ang ".zip" na extension ng file ay awtomatikong naidagdag ni zip.

ls -l source_code.zip

Kung hindi mo nais na makita ang output mula sa zip habang nilikha ang ZIP file, gamitin ang -q (tahimik) na pagpipilian.

zip -q source_code * .c * .h

Kasama ang Mga Direktoryo sa ZIP Files

Upang maisama ang mga sub-direktoryo sa ZIP file, gamitin ang -r (Recursive) na pagpipilian at isama ang pangalan ng sub-direktoryo sa linya ng utos. Upang lumikha ng isang ZIP file tulad ng dati at isama din ang archive sub-direktoryo, gamitin ang utos na ito.

zip -r -q source_code archive / * .c * .h

Upang maging mapagpansin sa taong kukuha ng mga file mula sa ZIP file na iyong nilikha, madalas na magalang na lumikha ng mga ZIP file na may mga file sa loob nito na nilalaman sa isang direktoryo. Kapag ang taong tumatanggap ng ZIP file ay na-extract ito, lahat ng mga file ay inilalagay nang maayos sa loob ng isang direktoryo sa kanilang computer.

Sa sumusunod na utos, ililista namin ang trabaho direktoryo at lahat ng mga sub-direktoryo. Tandaan na ang utos na ito ay inilalabas mula sa direktoryo ng magulang ng trabaho folder.

zip -r -q gumana ng source_code /

Pagtatakda ng Antas ng Kompresyon

Maaari mong itakda kung magkano ang compression na inilapat sa mga file habang idinagdag ang mga ito sa archive ng ZIP. Ang saklaw ay mula 0 hanggang 9, na walang 0 compression man. Ang mas mataas na compression, mas tumatagal upang lumikha ng ZIP file. Para sa katamtamang laki ng mga ZIP file, ang pagkakaiba sa oras ay hindi isang makabuluhang multa. Ngunit pagkatapos, para sa katamtamang laki ng mga ZIP file, ang default na compression (antas 6) ay marahil sapat na mabuti pa rin.

Upang makakuha zip upang magamit ang isang tukoy na antas ng compression, ipasa ang numero bilang isang pagpipilian sa linya ng utos, na may isang "-", tulad nito:

zip -0 -r -q gumana ng source_code /

Ang antas ng default na compression ay 6. Hindi na kailangang ibigay ang -6 opsyon, ngunit hindi ito makakasama kung gagawin mo.

zip -r -q gumana ng source_code /

Ang maximum na antas ng compression ay antas 9.

zip -9 -r -q gumana ng source_code /

Sa pagpili ng mga file at direktoryo na naka-archive dito, ang pagkakaiba sa pagitan ng walang compression (antas 0) at ang default na compression (antas 6) ay 400K. Ang pagkakaiba sa pagitan ng default na compression at ang pinakamataas na antas ng compression (antas 9) ay 4K lamang.

Maaaring hindi ganoon kadami, ngunit para sa mga archive na naglalaman ng daan-daang o libu-libong mga file, ang maliit na halaga ng labis na compression bawat file ay magdagdag ng isang kapaki-pakinabang sa pag-save ng puwang.

Pagdaragdag ng Mga Password sa Mga ZIP File

Madali ang pagdaragdag ng mga password sa mga ZIP file. Gamitin ang -e (I-encrypt) na opsyon at sasabihan ka upang ipasok ang iyong password at ipasok muli ito para sa pag-verify.

zip -e -r -q trabaho ng source_code /

Paano i-unzip ang isang ZIP File Gamit ang unzip Command

Upang makuha ang mga file mula sa isang ZIP file, gamitin ang unzip command, at ibigay ang pangalan ng ZIP file. Tandaan na ikaw gawin kailangang ibigay ang extension na ".zip".

i-unzip ang source_code.zip

Tulad ng mga file na nakuha ay nakalista ang mga ito sa window ng terminal.

Ang mga ZIP file ay hindi nagdadala ng mga detalye ng pagmamay-ari ng file. Ang lahat ng mga file na nakuha ay itinakda ng may-ari sa gumagamit na kumukuha sa kanila.

Katulad ng zip, i-unzip mayroong -q (Tahimik) na pagpipilian, sa gayon ay hindi mo kailangang makita ang listahan ng file bilang mga file na nakuha.

unzip -q source_code.zip

Kinukuha ang Mga File sa isang Target na Direktoryo

Upang makuha ang mga file sa isang tukoy na direktoryo, gamitin ang -d (Direktoryo) na pagpipilian, at ibigay ang landas sa direktoryo na nais mong makuha sa archive.

unzip -q source_code.zip -d ./development

I-extract ang Mga Protektadong Password ng ZIP Files

Kung ang isang ZIP file ay nilikha gamit ang isang password, i-unzip hihilingin sa iyo ang password. Kung hindi mo ibibigay ang tamang password,i-unzip ay hindi makuha ang mga file.

unzip -q source_code.zip

Kung wala kang pakialam tungkol sa iyong password na nakikita ng iba — o tungkol sa pagtatago nito sa iyong kasaysayan ng utos — maibibigay mo ang password sa linya ng utos na may -P (password) na pagpipilian. (Dapat kang gumamit ng kapital na "P.")

i-unzip -P limampu.treacle.cutlass -q source_code.zip

Hindi kasama ang Mga File

Kung hindi mo nais na kumuha ng isang partikular na file o pangkat ng mga file, gamitin ang -x (ibukod) na pagpipilian. Sa halimbawang ito, nais naming kunin ang lahat ng mga file bukod sa mga nagtatapos sa isang ".h" na extension.

unzip -q source_code.zip -x * .h

Pag-o-overwrite ng Mga File

Ipagpalagay na nakakuha ka ng isang archive ngunit hindi mo tinanggal ang ilang mga na-extract na file nang hindi sinasadya.

Ang isang mabilis na pag-aayos para sa iyan ay upang makuha muli ang mga file. Ngunit kung susubukan mong kunin ang ZIP file sa parehong direktoryo tulad ng dati, i-unzip hihimokin ka para sa isang desisyon tungkol sa pag-o-overtake ng mga file. Aasahan nito ang isa sa mga sumusunod na tugon.

Maliban sa r (Palitan ang pangalan) ng tugon, ang mga tugon na ito ay sensitibo sa kaso.

  • y: Oo, patungan ang file na ito
  • n: Hindi, huwag patungan ang file na ito
  • A: Lahat, patungan ang lahat ng mga file
  • N: Wala, mai-overwrite ang alinman sa mga file
  • r: Palitan ang pangalan, kunin ang file na ito ngunit bigyan ito ng isang bagong pangalan. Sasabihan ka para sa isang bagong pangalan.

Upang pilitin i-unzip upang patungan ang anumang mga mayroon nang mga file gamitin ang -o (Overlap) na pagpipilian.

unzip -o -q source_code.zip

Ang pinaka mahusay na paraan upang palitan ang nawawalang mga file ay magkakaroon i-unzip kunin lamang ang anumang mga file sa archive na hindi sa direktoryo ng target. Upang magawa ito, gamitin ang -n (Huwag kailanman ibagsak) na pagpipilian.

unzip -n source_code.zip

Naghahanap sa Loob ng isang ZIP File

Kadalasang kapaki-pakinabang at nakapagtuturo na makita ang isang listahan ng mga file sa loob ng isang ZIP file bago mo ito makuha. Maaari mo itong gawin sa -l (listahan ng archive) na pagpipilian. Ito ay ipinapasa sa pamamagitan ng mas kaunti upang mapamahalaan ang output.

unzip -l source_code.zip | mas kaunti

Ipinapakita ng output ang mga direktoryo at mga file sa loob ng ZIP file, ang kanilang haba at ang oras at petsa na idinagdag sa archive. Pindutin ang "q" upang umalis mula sa mas kaunti.

Mayroong iba pang mga paraan upang silip sa loob ng isang ZIP file na nagbibigay ng iba't ibang mga uri ng impormasyon, tulad ng makikita natin.

Magdagdag ng isang Password Gamit ang zipcloak Command

Kung nakalikha ka ng isang ZIP file ngunit nakalimutang magdagdag ng isang password, ano ang maaari mong gawin? Maaari mong mabilis na magdagdag ng isang password sa ZIP file gamit ang zipcloak utos Ipasa ang pangalan ng ZIP file sa linya ng utos. Sasabihan ka para sa isang password. Kailangan mong i-verify ang password sa pamamagitan ng pagpasok nito sa pangalawang pagkakataon.

zipcloak source_code.zip

Tingnan ang Mga Detalye ng File Gamit ang zipdetails Command

Ang mga zipdetail ipapakita sa iyo ang utos a marami ng impormasyon tungkol sa ZIP file. Ang makatuwirang paraan lamang upang hawakan ang dami ng output na maibibigay ng utos na ito ay ang pag-tubo dito mas kaunti .

zipdetails source_code.zip | mas kaunti

Tandaan na ang impormasyon ay isasama ang mga filename kahit na ang ZIP file ay protektado ng password. Ang ganitong uri ng impormasyon ay nakaimbak sa loob ng ZIP file bilang meta-data at hindi bahagi ng naka-encrypt na data.

Maghanap sa Loob ng File Gamit ang zipgrep Command

Ang zipgrep pinapayagan ka ng utos na maghanap sa loob ng mga file sa isang ZIP file. Sa sumusunod na halimbawa, nais naming malaman kung aling mga file sa loob ng ZIP file ang may teksto na "keyval.h" sa kanila.

zipgrep keyval.h source_code.zip

Maaari naming makita na ang mga file slang.c at getval.c naglalaman ng string na "keyval.h". Maaari din nating makita na mayroong dalawang kopya ng bawat isa sa mga file na ito sa iba't ibang mga direktoryo sa ZIP file.

Tingnan ang Impormasyon Gamit ang zipinfo Command

Ang zipinfo binibigyan ka ng utos ng isa pang paraan upang tumingin sa loob ng isang ZIP file. Tulad ng dati, pinapasok namin ang output sa pamamagitan ng mas kaunti.

zipinfo source_code.zip | mas kaunti

Mula kaliwa hanggang kanan ay nagpapakita ang output:

  • Ang mga pahintulot ng file
  • Ang bersyon ng tool na ginamit upang likhain ang ZIP file
  • Ang orihinal na laki ng file
  • Isang tagapaglarawan ng file (inilarawan sa ibaba)
  • Ang pamamaraan ng pag-compress (deflasi, sa kasong ito)
  • Ang data at stamp ng oras
  • Ang pangalan ng file at anumang direktoryo

Ang tagapaglaraw ng file ay binubuo ng dalawang character. Ang unang tauhan ay magiging isang "t" o isang "b" upang ipahiwatig ang isang teksto o binary file. Kung ito ay isang malaking titik ang file ay naka-encrypt. Ang pangalawang character ay maaaring isa sa apat na character. Kinakatawan ng character na ito kung anong uri ng meta-data ang kasama para sa file na ito: wala, isang pinalawig na lokal na header, isang "sobrang larangan", o pareho.

  • -: Kung wala alinman, ang character ay magiging isang gitling
  • l: kung mayroong isang pinalawig na lokal na header ngunit walang dagdag na larangan
  • x: kung walang pinalawig na lokal na header ngunit may isang karagdagang larangan
  • X: kung mayroong isang pinalawig na lokal na header at mayroong isang karagdagang larangan

Hatiin ang File Sa pamamagitan ng zipsplit Command

Kung kailangan mong ipadala ang ZIP file sa iba ngunit may mga paghihigpit sa laki o mga problema sa paghahatid ng file, maaari mong gamitin ang zipsplit utos na hatiin ang orihinal na ZIP file sa isang hanay ng mas maliit na mga ZIP file.

Ang -n Pinapayagan ka ng pagpipiliang (laki) na magtakda ng isang maximum na laki para sa bawat isa sa mga bagong file na ZIP. Sa halimbawang ito, pinaghahati namin ang source_code.zip file Hindi namin nais ang alinman sa mga bagong ZIP file na mas malaki sa 100 KB (102400 bytes).

zipsplit -n 102400 source_code.zip

Ang laki na pinili mo ay hindi maaaring mas maliit kaysa sa laki ng alinman sa mga file sa ZIP file.

Gamit ang mga utos na ito, maaari kang lumikha ng iyong sariling mga ZIP file, i-unzip ang mga file na ZIP na natanggap mo, at magsagawa ng iba pang mga pagpapatakbo sa kanila nang hindi umaalis sa Linux terminal.


$config[zx-auto] not found$config[zx-overlay] not found