Wyszukiwanie w witrynie

Dtrx — inteligentne narzędzie do ekstrakcji archiwów (tar, zip, cpio, obr./min, deb, rar) dla systemu Linux


Każdy z nas mógł kiedyś spotkać się z taką sytuacją podczas używania poleceń tar.gz, tar.bz2, tbz Linuksa . Tyle typów archiwów, tyle poleceń do zapamiętania… Cóż, już nie, dzięki narzędziu dtrx.

  1. 18 poleceń Tar do tworzenia i wyodrębniania archiwów w systemie Linux
  2. Jak otwierać, wyodrębniać i tworzyć pliki RAR w systemie Linux

Co to jest Dtrx?

Dtrx oznacza „Do The Right Extraction”, jest to bardzo skuteczna aplikacja wiersza poleceń o otwartym kodzie źródłowym dla systemów *nix, która upraszcza i ułatwia wyodrębnianie archiwów.

Polecenie dtrx zastępuje polecenia „tar -zxvf” lub „tar -xjf” i udostępnia jedno polecenie do wyodrębniania archiwów w wielu różnych formatach, w tym tar, zip, rpm, deb, gem >, 7z, cpio, rar i wiele innych. Można go także używać do dekompresji plików skompresowanych za pomocą bzip2, gzip itp.

Domyślnie dtrx wyodrębnia zawartość do dedykowanego katalogu, a także naprawia problemy z uprawnieniami (takie jak odmowa uprawnień) napotykane przez użytkownika podczas wyodrębniania zawartości, aby mieć pewność, że właściciel może czytać i zapisywać wszystko te pliki.

Funkcje Dtrx

  1. Obsługuje wiele typów archiwów: udostępnia tylko jedno proste polecenie do wyodrębnienia plików tar, zip, rar, gz, bz2, xz, obr./min, deb, gem, samorozpakowujących się plików zip i wielu innych formatów plików exe .
  2. Utrzymuje wszystko w porządku: wyodrębnia archiwa do ich własnych, dedykowanych katalogów.
  3. Rozsądne uprawnienia: zapewnia również, że użytkownik może czytać i zapisywać wszystkie pliki po wyodrębnieniu, zachowując uprawnienia nienaruszone.
  4. Wyodrębnianie rekurencyjne: może znajdować archiwa w archiwum i również je wyodrębniać.

Jak zainstalować Dtrx w systemie Linux

Narzędzie dtrx jest domyślnie zawarte w repozytoriach Ubuntu, wystarczy, że po prostu użyjesz apt-get, aby zainstalować je w swoim systemie.

Na Debianie/Ubuntu/Linux Mint

sudo apt-get install dtrx

W RHEL/CentOS/Fedorze

W systemach opartych na Red Hat dtrx nie jest dostępny w domyślnych repozytoriach. Musisz pobrać skrypt dtrx i zainstalować program w całym systemie, używając poniższych poleceń jako użytkownik root.

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
Przykładowe wyjście
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

Jak korzystać z polecenia dtrx

Polecenie dtrx przypomina trochę jeden pierścień, który ma rządzić wszystkimi we Władcy Pierścieni. Zamiast pamiętać składnię każdego archiwum, wystarczy zapamiętać polecenie dtrx.

1. Wyodrębnianie pojedynczego archiwum

Na przykład chcę wyodrębnić plik archiwum o nazwie „tecmint27-12-2013.gz”, wykonuję tylko polecenie dtrx bez użycia żadnych flag.

[root@tecmint]# dtrx tecmint27-12-2013.gz

Oprócz uproszczenia wyodrębniania, ma wiele innych opcji, takich jak wyodrębnianie pliku do folderu i rekursywne rozpakowywanie wszystkich pozostałych archiwów w danym archiwum.

2. Wyodrębnianie wielu archiwów

Załóżmy, że masz plik „dtrAll.zip” składający się z dtr1.zip, dtr2.zip i dtr3.zip< każdy składający się odpowiednio z dtr1, dtr2 i dtr3. Zamiast konieczności ręcznego wyodrębniania najpierw dtrAll zip, a następnie wyodrębniania każdego z dtr1, dtr2 i dtr3 możesz bezpośrednio rozpakować go do odpowiednich folderów, używając dtrx i wybierając opcję „a”, rekursywnie rozpakowuje wszystkie pliki zip.

[root@tecmint]# dtrx dtrAll.zip
Przykładowe wyjście
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 rozpakowaniu zawartość wyodrębnionego katalogu można sprawdzić za pomocą polecenia ls.

[root@tecmint]# cd dtrAll
[root@tecmint]# ls 

dtr1  dtr1.zip  dtr2  dtr2.zip  dtr3  dtr3.zip

3. Wyodrębnianie określonego archiwum

Załóżmy, że chcesz wyodrębnić pierwsze archiwum, a nie znajdujące się w nim archiwa. Wybierając N, wyodrębnia tylko dane archiwum, a nie inne znajdujące się w nim archiwa.

[root@tecmint]# dtrx dtrAll.zip
Przykładowe wyjście
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

Zawartość wyodrębnionego katalogu można sprawdzić za pomocą polecenia ls, jak pokazano.

[root@tecmint]# cd dtrAll
[root@tecmint]# ls

dtr1.zip dtr2.zip dtr3.zip

4. Wyodrębnij każdą warstwę archiwum

Aby wyodrębnić każdą warstwę archiwum wewnątrz archiwum indywidualnie dla każdego przypadku, tj. jeśli chcesz wyodrębnić drugą warstwę archiwów, ale nie trzecią, możesz użyć opcji „o”.

Załóżmy, że masz plik zip „dtrNewAll.zip”, który zawiera „dtrAll.zip” i „dtrNew”. Teraz, jeśli chcesz wyodrębnić także zawartość „dtrNewAll” i „dtrAll”, ale nie z pliku dtr1.zip, dtr2 .zip i dtr3.zip, możesz użyć opcji „o” i „n”, jak pokazano poniżej.

dtrx dtrNewAll.zip
Przykładowe wyjście
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

Zawartość wyodrębnionego katalogu można sprawdzić za pomocą polecenia ls, jak pokazano.

[root@tecmint]# cd dtrNewAll
[root@tecmint]# ls

dtrAll  dtrAll.zip  dtrNew
[root@tecmint]# cd dtrAll
[root@tecmint]# ls

dtr1.zip dtr2.zip dtr3.zip

Najpierw wybieramy opcję „o”, co oznacza, że zostaną rozpakowane wszystkie archiwa znajdujące się w dtrNewAll. Później wybieramy opcję „n” dla dtrAll.zip co oznacza, że znajdujące się w nim archiwa dtr1.zip , dtr2.zip i dtr3.zip nie zostaną rozpakowane.

5. Wyodrębnij metadane z plików .deb, .rpm i .gem

Opcja „-m” wyodrębnia metadane z archiwów .deb, .rpm i .gem, zamiast ich normalnej zawartości. Oto przykład polecenia.

[root@tecmint]# dtrx -m openfire_3.8.2_all.deb 
[root@tecmint]# dtrx -m openfire-3.8.2-1.i386.rpm
[root@tecmint]# ls

conffiles  control  md5sums  postinst  postrm  prerm

Jest o wiele więcej opcji dtrx do odkrycia, po prostu uruchom „dtrx –help”, aby wyświetlić listę dostępnych opcji.

[root@tecmint]# 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

Linki referencyjne

Strona główna dtrx

Myślę, że musisz spróbować dtrx, ponieważ jest to jedyne potężne narzędzie wiersza poleceń, które daje jedno polecenie do dekompresji plików archiwalnych w dowolnym formacie. To na razie tyle. Nie zapomnij zostawić notatki w sekcji komentarzy.