Lebih
Cara ekstrak file ke direktori lain dengan menggunakan 'tar' perintah?
Saya pikir arsip tar.tar /pengguna/mylocation
akan bekerja, tapi itu doesn't. Bagaimana saya bisa melakukan itu?
677
6
Untuk mengekstrak arsip ke direktori yang berbeda dari saat ini, gunakan
-C
, atau--directory
, tar pilihan, seperti dalamPerhatikan bahwa target direktori yang telah ada sebelum menjalankan perintah tersebut (hal ini dapat dibuat dengan
mkdir /target/direktori
).Membaca halaman (perintah:
man tar
) untuk pilihan lain.Perhatikan bahwa jika anda tarball sudah berisi nama direktori yang ingin anda ubah, tambahkan
--strip-komponen=1
pilihan:Menggabungkan sebelumnya jawaban dan komentar:
Hanya ekstrak isinya dan membuat target direktori jika hilang:
Untuk mengekstrak dan juga menghapus akar(tingkat pertama) direktori dalam zip
Pilihan lain adalah dengan menggunakan-satu-puncak-tingkat. Ini akan secara otomatis membuat direktori berdasarkan nama file asli.
Selain itu jika anda ingin, anda dapat menentukan sendiri dan tar akan membuat secara otomatis.
Apa yang saya temukan menarik dalam kaitannya dengan ekstraksi adalah, bahwa hal itu tergantung bagaimana anda menciptakan arsip, lihat contoh ini
ketika anda melakukan
tar -zcvf folder.tar.gz folder
semuanya seperti yang diharapkan = ketika anda untar itu sekarang akan untarred (folder akan membuat, jika anda dihapus) sebagai/tmp/folder/
.Tapi, ketika anda akan membuat tar sebagai
tar -zcvf tmp-folder.tar.gz /tmp/folder
dan anda untar itu di folder /tmp, hasilnya akan menjadi/tmp/tmp/folder
direktori ! Dalam kasus seperti itu anda harus untar ke / -tar -xf tmp-folder.tar.gz -C /
Dengan tar 1.29, kita hanya bisa menambahkan direktori nama setelah nama file tar. Misalnya,