Dtrx - inteligentno orodje za ekstrakcijo arhiva (tar, zip, cpio, rpm, deb, rar) orodje za Linux
Pri uporabi ukazov tar.gz, tar.bz2, tbz smo se vsi v določenem trenutku morda soočili s situacijo. Toliko vrst arhivov, toliko ukazov, ki si jih je treba zapomniti ... No, ne več, zahvaljujoč orodju dtrx.
- 18 ukazov Tar za ustvarjanje in ekstrahiranje arhivov v Linuxu
- Kako odpreti, izvleči in ustvariti datoteke RAR v Linuxu
Kaj je Dtrx?
Dtrx je kratica za »Do The Right Extraction«, je odprtokodna in zelo učinkovita aplikacija ukazne vrstice za sisteme * nix, ki vam olajša delo pri pridobivanju arhivov.
Ukaz dtrx je zamenjava ukazov "tar -zxvf" ali "tar -xjf" in ponuja en sam ukaz za izvlečenje arhivov v številnih različnih oblikah, vključno s tar, zip, rpm, deb, gem, 7z, cpio, rar in še veliko več. Uporablja se lahko tudi za stiskanje datotek, stisnjenih z bzip2, gzip itd.
Dtrx privzeto izvleče vsebino v namenski imenik in odpravi tudi težave z dovoljenji (na primer zavrnjeno dovoljenje), s katerimi se sooča uporabnik med pridobivanjem vsebine, da lastnik lahko bere in piše vse te datoteke.
Dtrx funkcije
- Obdeluje številne vrste arhivov: ponuja samo en preprost ukaz za ekstrakcijo tar, zip, rar, gz, bz2, xz, rpm, deb, gem, samorazpakirane zip datoteke in številne druge oblike exe datotek. >
- Vodi vse organizirano: arhiv bo izvlekel v lastne namenske imenike.
- Zdrava dovoljenja: Zagotavlja tudi, da lahko uporabnik po ekstrakciji bere in piše vse te datoteke, pri čemer dovoljenje ostane nedotaknjeno.
- Rekurzivno pridobivanje: v arhivu lahko najde arhive in jih tudi izvleče.
Kako namestiti Dtrx v Linux
Orodje dtrx je privzeto vključeno v repozitoriji Ubuntu, vse, kar morate storiti, je, da preprosto namestite v svoj sistem.
$ sudo apt-get install dtrx
V sistemih, ki temeljijo na Red Hat, dtrx ni na voljo prek privzetih repozitorijev, morate prenesti skript dtrx in namestiti program po celotnem sistemu z uporabo spodnjih ukazov kot korenski uporabnik.
# wget http://brettcsmith.org/2007/dtrx/dtrx-7.1.tar.gz # tar -xvf dtrx-7.1.tar.gz # cd dtrx-7.1 # python setup.py install --prefix=/usr/local
running install running build running build_scripts creating build creating build/scripts-2.6 copying and adjusting scripts/dtrx -> build/scripts-2.6 changing mode of build/scripts-2.6/dtrx from 644 to 755 running install_scripts copying build/scripts-2.6/dtrx -> /usr/local/bin changing mode of /usr/local/bin/dtrx to 755 running install_egg_info Creating /usr/local/lib/python2.6/site-packages/ Writing /usr/local/lib/python2.6/site-packages/dtrx-7.1-py2.6.egg-info
Kako uporabiti ukaz dtrx
Ukaz dtrx je nekako podoben enemu obroču, ki bo vladal vsem v Lord of the Rings. Namesto da bi si morali zapomniti skladnjo za vsak arhiv, si morate zapomniti le ukaz dtrx.
Na primer, želim izvleči arhivsko datoteko z imenom »tecmint27-12-2013.gz«, izvršim samo ukaz dtrx, ne da bi uporabil zastavice.
dtrx tecmint27-12-2013.gz
Razen poenostavitve ekstrakcije ima še vrsto drugih možnosti, na primer izvlečenje datoteke v mapo in rekurzivno izvlečenje vseh drugih arhivov znotraj določenega arhiva.
Razmislite o tem, da imate datoteko »dtrAll.zip«, ki jo sestavljajo dtr1.zip, dtr2.zip in dtr3.zip, sestavljeni iz dtr1, dtr2 in dtr3. Namesto da bi morali ročno najprej izvleči dtrAll zip in nato izvleči vsakega od dtr1, dtr2 in dtr3, ga lahko neposredno izvlečete v ustrezne mape z dtrx in z izbiro možnosti "a" rekurzivno izvleče vse zip datoteke.
dtrx dtrAll.zip
dtrx: WARNING: extracting /root/dtrAll.zip to dtrAll.1 dtrAll.zip contains 3 other archive file(s), out of 3 file(s) total. You can: * _A_lways extract included archives during this session * extract included archives this _O_nce * choose _N_ot to extract included archives this once * ne_V_er extract included archives during this session * _L_ist included archives What do you want to do? (a/o/N/v/l) a
Po ekstrakciji lahko vsebino ekstrahiranega imenika preverite z ukazom ls.
cd dtrAll ls dtr1 dtr1.zip dtr2 dtr2.zip dtr3 dtr3.zip
Recimo, da želite izvleči prvi arhiv in ne arhivov v njem. Z izbiro N samo izvleče dani arhiv in ne drugih arhivov v njem.
dtrx dtrAll.zip
dtrx: WARNING: extracting /root/dtrAll.zip to dtrAll.1 dtrAll.zip contains 3 other archive file(s), out of 3 file(s) total. You can: * _A_lways extract included archives during this session * extract included archives this _O_nce * choose _N_ot to extract included archives this once * ne_V_er extract included archives during this session * _L_ist included archives What do you want to do? (a/o/N/v/l) N
Vsebino izvlečenega imenika lahko preverite z ukazom ls, kot je prikazano.
cd dtrAll ls dtr1.zip dtr2.zip dtr3.zip
Če želite ekstrahirati vsako plast arhiva v arhivu za vsak primer posebej, tj. Če želite izvleči 2. plast arhiva, ne pa tudi 3. plast, lahko uporabite možnost "o".
Razmislite o tem, da imate datoteko zip »dtrNewAll.zip«, ki vsebuje vsebino »dtrAll.zip« in »dtrNew«. Če želite zdaj izvleči tudi vsebino datotek "dtrNewAll" in "dtrAll", ne pa tudi datotek dtr1.zip, dtr2.zip in dtr3.zip, lahko uporabite možnosti "o" in "n", kot je prikazano spodaj.
# dtrx dtrNewAll.zip
dtrNewAll.zip contains 1 other archive file(s), out of 2 file(s) total. You can: * _A_lways extract included archives during this session * extract included archives this _O_nce * choose _N_ot to extract included archives this once * ne_V_er extract included archives during this session * _L_ist included archives What do you want to do? (a/o/N/v/l) o
dtrAll.zip contains 3 other archive file(s), out of 3 file(s) total. You can: * _A_lways extract included archives during this session * extract included archives this _O_nce * choose _N_ot to extract included archives this once * ne_V_er extract included archives during this session * _L_ist included archives What do you want to do? (a/o/N/v/l) n
Vsebino izvlečenega imenika lahko preverite z ukazom ls, kot je prikazano.
cd dtrNewAll ls dtrAll dtrAll.zip dtrNew
cd dtrAll ls dtr1.zip dtr2.zip dtr3.zip
Najprej izberemo možnost "o", kar pomeni, da bodo izvlečeni vsi arhivi znotraj dtrNewAll. Kasneje izberemo možnost »n« za dtrAll.zip, kar pomeni, da arhivi v njem dtr1.zip, dtr2.zip in dtr3.zip ne bodo ekstrahirani.
Možnost “-m” izvleče metapodatke iz arhivov .deb, .rpm in .gem namesto njihove običajne vsebine. Tu je primer ukaza.
dtrx -m openfire_3.8.2_all.deb dtrx -m openfire-3.8.2-1.i386.rpm
ls conffiles control md5sums postinst postrm prerm
Obstaja veliko več možnosti dtrx, ki jih je treba raziskati, samo zaženite »dtrx –help«, da navedete razpoložljive možnosti.
dtrx --help Usage: dtrx [options] archive [archive2 ...] Intelligent archive extractor Options: --version show program's version number and exit -h, --help show this help message and exit -l, -t, --list, --table list contents of archives on standard output -m, --metadata extract metadata from a .deb/.gem -r, --recursive extract archives contained in the ones listed -n, --noninteractive don't ask how to handle special cases -o, --overwrite overwrite any existing target output -f, --flat, --no-directory extract everything to the current directory -v, --verbose be verbose/print debugging information -q, --quiet suppress warning/error messages
Referenčne povezave
dtrx Domača stran
Mislim, da morate poskusiti dtrx, ker je to edino zmogljivo orodje ukazne vrstice, ki daje en sam ukaz za dekompresijo katere koli oblike arhivskih datotek. Za zdaj je to vse, in ne pozabite pustiti zapiska v oddelku za komentarje.