Dtrx - Linux için Akıllı Arşiv Çıkarma (tar, zip, cpio, rpm, deb, rar) Aracı
Hepimiz Linux tar.gz, tar.bz2, tbz komutlarını kullanırken bir noktada bir durumla karşılaşmış olabiliriz. . O kadar çok arşiv türü, hatırlanacak o kadar çok komut var ki... dtrx aracı sayesinde artık öyle değil.
- Linux'ta Arşiv Oluşturmak ve Çıkarmak için 18 Tar Komutu
- Linux'ta RAR Dosyaları Nasıl Açılır, Çıkarılır ve Oluşturulur
Dtrx nedir?
Dtrx, "Doğru Çıkartmayı Yapın" anlamına gelir; arşiv çıkarma işinizi kolaylaştıran *nix sistemleri için açık kaynaklı ve çok etkili bir komut satırı uygulamasıdır.
dtrx komutu, "tar -zxvf" veya "tar -xjf" komutlarının yerine geçmiştir ve arşivleri çıkarmak için tek bir komut sağlar tar, zip, rpm, deb, gem dahil olmak üzere çok sayıda farklı formatta , 7z, cpio, rar ve çok daha fazlası. Ayrıca bzip2, gzip vb. ile sıkıştırılmış dosyaları açmak için de kullanılabilir.
Varsayılan olarak, dtrx içeriği özel bir dizine ayıklar ve aynı zamanda sahibinin içeriği okuyabildiğinden ve yazabildiğinden emin olmak için içeriği ayıklarken kullanıcının karşılaştığı izin sorunlarını (izin reddedildi gibi) düzeltir. bu dosyalar.
Dtrx Özellikleri
- Birçok arşiv türünü yönetir: Tar, zip, rar, gz, bz2, xz, rpm, deb, gem, kendi kendine açılan zip dosyalarını ve diğer birçok exe dosyası biçimini ayıklamak için yalnızca tek bir basit komut sağlar .
- Her şeyi düzenli tutar: Arşivleri kendi özel dizinlerine çıkarır.
- Akıllı izinler: Ayrıca, kullanıcının çıkarma işleminden sonra tüm bu dosyaları okuyup yazabilmesini ve iznin bozulmamasını sağlar.
- Yinelemeli çıkarma: Arşiv içindeki arşivleri bulabilir ve bunları da çıkarabilir.
Linux'ta Dtrx Nasıl Kurulur
Dtrx aracı varsayılan olarak Ubuntu depolarına dahil edilmiştir; tek yapmanız gereken, sisteminize yüklemek için bir apt-get işlemi yapmaktır.
Debian/Ubuntu/Linux Mint'te
sudo apt-get install dtrx
RHEL/CentOS/Fedora'da
Red Hat tabanlı sistemlerde, dtrx varsayılan depolar yoluyla kullanılamaz; bir dtrx betiği indirmeniz ve root kullanıcısı olarak aşağıdaki komutları kullanarak programı sistem genelinde yüklemeniz gerekir.
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
Örnek Çıktı
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
dtrx Komutu Nasıl Kullanılır
Dtrx komutu, Yüzüklerin Efendisi'nde hepsine hükmeden tek yüzük gibidir. Her arşiv için sözdizimini hatırlamak yerine hatırlamanız gereken tek şey dtrx komutudur.
1. Tek Arşiv Çıkarma
Örnek olarak “tecmint27-12-2013.gz“ isimli arşiv dosyasını çıkartmak istiyorum, herhangi bir flag kullanmadan sadece dtrx komutunu çalıştırıyorum.
[root@tecmint]# dtrx tecmint27-12-2013.gz
Çıkarmayı basitleştirmenin yanı sıra, dosyayı bir klasöre çıkarmak ve belirli bir arşiv içindeki diğer tüm arşivleri yinelemeli olarak çıkarmak gibi bir dizi başka seçeneğe de sahiptir.
2. Birden Fazla Arşivin Çıkarılması
dtr1.zip, dtr2.zip ve dtr3.zip<'den oluşan bir “dtrAll.zip” dosyanız olduğunu düşünün. her biri sırasıyla dtr1,dtr2 ve dtr3'ten oluşur. Önce dtrAll zip dosyasını manuel olarak çıkarmak ve ardından dtr1, dtr2 ve dtr3 dosyalarının her birini çıkarmak yerine dtrx'i kullanarak doğrudan ilgili klasörlere çıkarabilirsiniz ve “a” seçeneğini seçerek tüm zip dosyalarını yinelemeli olarak çıkarır.
[root@tecmint]# dtrx dtrAll.zip
Örnek Çıktı
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
Çıkarma işleminden sonra, çıkarılan dizinin içeriği ls komutu kullanılarak doğrulanabilir.
[root@tecmint]# cd dtrAll
[root@tecmint]# ls
dtr1 dtr1.zip dtr2 dtr2.zip dtr3 dtr3.zip
3. Belirli Arşivin Çıkarılması
Diyelim ki içindeki arşivleri değil, ilk arşivi çıkarmak istiyorsunuz. N seçildiğinde yalnızca verilen arşiv çıkarılır, içindeki diğer arşivler çıkarılmaz.
[root@tecmint]# dtrx dtrAll.zip
Örnek Çıktı
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
Çıkarılan dizinin içeriği gösterildiği gibi ls komutu kullanılarak doğrulanabilir.
[root@tecmint]# cd dtrAll
[root@tecmint]# ls
dtr1.zip dtr2.zip dtr3.zip
4. Arşivin Her Katmanını Çıkarın
Arşivin içindeki her bir arşiv katmanını duruma göre çıkarmak için, yani arşivin 2. katmanını çıkarmak istiyorsanız ancak 3. katmanı çıkarmak istemiyorsanız, “o” seçeneğini kullanabilirsiniz.
İçeriğinde “dtrAll.zip” ve “dtrNew” bulunan bir “dtrNewAll.zip” zip dosyanız olduğunu düşünün. Artık “dtrNewAll” ve “dtrAll” içeriğini de çıkarmak istiyorsanız ancak dtr1.zip'in içeriğini çıkarmak istemiyorsanız, dtr2 .zip ve dtr3.zip, aşağıda gösterildiği gibi “o” ve “n” seçeneklerini kullanabilirsiniz.
dtrx dtrNewAll.zip
Örnek Çıktı
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
Çıkarılan dizinin içeriği gösterildiği gibi ls komutu kullanılarak doğrulanabilir.
[root@tecmint]# cd dtrNewAll
[root@tecmint]# ls
dtrAll dtrAll.zip dtrNew
[root@tecmint]# cd dtrAll
[root@tecmint]# ls
dtr1.zip dtr2.zip dtr3.zip
Öncelikle “o” seçeneğini seçiyoruz, bu da dtrNewAll içindeki tüm arşivlerin çıkartılacağı anlamına geliyor. Daha sonra dtrAll.zip için “n” seçeneğini seçiyoruz, bu da içindeki arşivlerin dtr1.zip , dtr2.zip olduğu anlamına geliyor ve dtr3.zip çıkartılmayacaktır.
5. .deb, .rpm ve .gem dosyalarından meta verileri çıkarın
“-m” seçeneği meta verileri .deb, .rpm ve .gem arşivlerinden çıkarır, normal içerikleri yerine. İşte komutun bir örneği.
[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
Keşfedilecek çok daha fazla dtrx seçeneği var; mevcut seçenekleri listelemek için “dtrx –help” komutunu çalıştırmanız yeterli.
[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
Referans Bağlantıları
dtrx Ana Sayfası
Bence dtrx'i denemelisiniz, çünkü bu, herhangi bir arşiv dosyası biçimindeki sıkıştırmayı açmak için tek bir komut veren tek güçlü komut satırı aracıdır. Şimdilik bu kadar, yorum kısmına notunuzu bırakmayı unutmayın.