TAR veya TAR.GZ arşivinden tek bir dosya veya klasörü ayıklamak mı istiyorsunuz? Bunu Linux'ta tar komutunu kullanarak şu şekilde yapabilirsiniz.
Bir tarball (TAR veya TAR.GZ), çok sayıda dosyayı yerel olarak veya internet üzerinden depolamayı ve aktarmayı kolaylaştıran, tek bir arşiv olarak bir araya getirilmiş bir dizi dosyadır. Dosyalara ihtiyacınız olduğunda, arşivi çıkarmanız yeterlidir.
Büyük bir arşivden yalnızca tek bir dosyaya ihtiyaç duyduğunuz bir senaryo düşünün. Böyle bir durumda arşivin tamamını çıkartmak yerine sadece ihtiyacınız olan dosyayı çıkartabilirsiniz. Nasıl olduğunu görelim.
Bir Tarball'ın İçeriğini Görüntüleyin
Sadece içeriğini görmek istiyorsanız TAR veya TAR.GZ dosyası, ayıklamanız gerekmez. Bunun yerine, içindekileri görüntülemek için aşağıdaki komutu kullanın:
tar -tvf [arşiv.tar]
tar -ztvf [arşiv.tar.gz]
Bu, arşivdeki tüm dosya ve dizinlerin listesini yazdıracaktır.
Tarball'dan Tek Bir Dosya Çıkarın
TAR veya TAR.GZ'den tek bir dosyayı ayıklamak için aşağıdaki komut formatını kullanın:
tar -xvf [arşiv.tar] [dosya yolu]
tar -zxvf [archive.tar.gz] [dosya yolu]
Unutmayın, çıkartmak istediğiniz dosyanın tam yolunu sağlamanız gerekecek. Kullanarak dosyanın veya dizinin tam yolunu bulabilirsiniz. tar -tvf [arşiv.tar] emretmek.
Bir dosyayı ayıklamak için test1.txt dan test.tar Ve test.tar.gz dosyalar, komutlar şöyle olacaktır:
tar -xvf test.tar test1.txt
tar -zxvf test.tar.gz test1.txt
...Neresi:
- -X arşivden dosya ayıklamak için kullanılır
- -v ayıklanırken ilerlemeyi görmek için kullanılır
- -F tarball adını belirtmek için kullanılır
- -z TAR.GZ dosyalarını açmak için kullanılır
Bu komutlar, belirtilen dosyayı geçerli terminal dizininden çıkaracaktır.
Tarball'dan Tek Bir Dizini Çıkarın
Benzer şekilde, aşağıdaki sözdizimini kullanarak bir tarball'dan tek bir dizini de çıkarabilirsiniz:
tar xvf [arşiv.tar] [dizine giden yol]
tar -zxvf [arşiv.tar.gz] [dizine giden yol]
Örneğin, bir bütünü çıkarmak için test1 gelen alt dizin test.tar arşiv, dizinin tam yolunu sağlamanız gerekir, yani. test/test1:
tar -xvf testi.tar testi/test1
Bu, tüm alt dizini çıkaracak test/test1 geçerli terminal dizininde.
Tek Bir Dosyayı veya Klasörü Farklı Bir Dizine Çıkarın
ayrıca yapabilirsin bir tarball'dan bir dosya veya dizini ayıklayın farklı bir dizine. Bunun için yukarıdaki ile aynı sözdizimini kullanın, ancak şunu ekleyin: -C seçenek ve ardından hedef dizin:
tar -xvf [arşiv.tar] -C [hedef_dizin] [dosya-veya-dizin]
tar -zxvf [arşiv.tar.gz] -C [hedef_dizin] [dosya-veya-dizin]
Diyelim ki bir dizini çıkarmak istiyoruz deneme2 dan test.tar arşivlemek İndirilenler mevcut çalışma dizini yerine dizin. Bu durumda komut şöyle olacaktır:
tar -xvf test.tar -C ~/İndirilenler/ test/test2
Bir Tarball'dan Tek Bir Dosyayı veya Dizini Silme
Bir TAR veya TAR.GZ dosyasından tek bir dosya veya dizini silmeniz gerekirse, --silmek tar komutuyla seçenek:
tar -vf [arşiv.tar] --delete [dosya-veya-dizin]
Ancak, bir dosyayı veya dizini doğrudan sıkıştırılmış bir tarball'dan (TAR.GZ) silemezsiniz. Yapmanız gereken önce TAR.GZ dosyasını açın, dosyayı veya dizini silin ve ardından yeniden sıkıştırın.
TAR.GZ dosyasını açmak için aşağıdaki komutu kullanın:
gzip -d [arşiv.tar.gz]
Sıkıştırılmış dosyayı açmak, dosyayı bir TAR'a dönüştürür. Artık aşağıdakileri kullanarak dosyayı TAR arşivinden silebilirsiniz:
tar -vf [arşiv.tar] --delete [dosya-veya-dizin]
Bundan sonra, TAR dosyasını gzip kullanarak yeniden sıkıştırın:
gzip -f [arşiv.tar]
Linux'ta Arşivlerle Çalışırken Zaman Kazanın
Bir arşivden yalnızca gerekli dosyaların ayıklanması yalnızca karmaşayı önlemekle kalmaz, aynı zamanda çok sayıda dosya arasında arama yapmak için harcanacak zamandan da tasarruf sağlar.
Bazen, TAR dosyalarının oluşturulması ve ayıklanması, sisteminizde yinelenen dosyalara neden olur. Bu nedenle, alanınızı düzenlemek için bu kopyaları periyodik olarak belirleyip kaldırmak iyi bir uygulamadır.