Dosyaları 'tar' komutunu kullanarak başka bir dizine nasıl çıkarabilirim?

Ben tar archive.tar /users/mylocationın işe yarayacağını düşünmüştüm ama yaramadı. Bunu nasıl yapabilirim?

Çözüm

Bir arşivi geçerli dizinden farklı bir dizine çıkarmak için -C veya --directory tar seçeneğini kullanın

tar -xf archive.tar -C /target/directory

Bu komutu çalıştırmadan önce hedef dizinin var olması gerektiğini unutmayın (mkdir /target/directory ile oluşturulabilir).

Diğer seçenekler için kılavuz sayfasını (komut: man tar) okuyun.

Yorumlar (8)

Tarball'unuz zaten değiştirmek istediğiniz bir dizin adı içeriyorsa, --strip-components=1 seçeneğini ekleyin:

tar xf archive.tar -C /target/directory --strip-components=1
Yorumlar (3)

Önceki cevapları ve yorumları birleştirerek:

Basitçe içeriği ayıklamak ve eksikse hedef dizini oluşturmak için:

mkdir -p /target/directory && tar xf archive.tar -C /target/directory

Zip içindeki kök (ilk seviye) dizini çıkarmak ve ayrıca kaldırmak için

mkdir -p /target/directory && tar xf archive.tar -C /target/directory --strip-components=1
Yorumlar (0)