Bash ZIP unpack


Uvod

Predstavljajte si, da imate več 1000 zip arhivov v neki mapi. Zapakirani so tako, da ne vsebujejo informacij o mapi. To pomeni, da bi ob razširitvi dobili katastrofalno solato, iz katere se ne bi mogli znajti. Rešitev je ta preprosta skripta, ki omogoča hitro razširjanje zip arhivov v lastne poddirektorije

Konfiguracija

Skripto si lahko prenesete s klikom na povezavo na desni in jo shranite na disk. Sedaj odprite konzolo in jo napravite izvedljivo


chmod +x zip_unpack.sh

Sedaj se najprej poženite v urejanje nastavitev (avtomatska konfiguracija v trenutni verziji še ni mogoča). Odprite s poljubnim urejevalnikom tekstovnih datotek (recimo Kate v KDE, Gedit v Gnome ali nano, pico, vi, vim v konzolnem načinu.

Uredite poti do izvirnega direktorija, ki vsebuje .zip datoteke - spremenljivka SRCDIR. Skripta bo opozorila, če direktorij ne obstaja, zato ni panike, da bi šlo kaj narobe. Nastavite tudi direktorij kamor bi radi arhive razširili - spremenljivka DIR, če ta še ne obstaja, ga bo skripta samodejno napravila. Bodite pozorni na to, da na koncu poti zapišete slash /, da bo zadeva sploh delovala.

Ko končate, datoteko shranite in poženite preko ukaza


bash zip_unpack.sh

Skripto ob vsakem času prekinete tako, da pritisnete kombinacijo


Ctrl+C

ali pa enostavno zaprete bash okno


Kako deluje?

Skripta prebere vsebino direktorija definiranega s SRCDIR (če ta seveda obstaja) in poišče le .zip arhive. Nato preveri, če ciljna mapa DIR obstaja. V primeru, da mapa ne obstaja, jo napravi. Sledi ekstrakcija, kjer unzip ekstrahira v podmapo, ki je ime arhiva, predelano tako da so presledki zamenjani s podčrtaji. Presledkov v parametru -d namreč unzip ne mara. Skripta poleg tega še izpiše skupno število razširjenih datotek.

V datoteki so zapisani tudi komentarji.


Copyright 2002-2012 Andrej Mernik, vsa vprašanja na e-mail. Pa še Posebna zahvala. Stran je bojda narejena v skladu s XHTML standardi. Za spremljanje novosti lahko uporabite tudi RSS.

Verzija

0,99

Kaj bom dodal

Direktno konfiguracijo direktorijev

Prenos

ZIP unpack (1 kB)