Apakah mungkin untuk membuat direktori target, mirip dengan mkdir -p
, di mana saya dapat mendefinisikan direktori target yang tidak ada dalam perintah tar saya, dan tar akan membuat direktori untuk saya?
Saya tahu saya bisa mengarahkan output ke direktori menggunakan tar -C /target/dir
, tetapi ini tidak berfungsi jika direktori target tidak ada.
Jawaban:
sumber
mkdir -p /target/dir && tar -C $_
$_
adalah parameter khusus di Bash yang memperluas argumen terakhir ke perintah sebelumnya.Dari halaman manual dari perintah tar
----- uji
tes 1
// jika nama tgz sama dengan root_dir dari arsip, tidak ada efek lain
tes 2
// jika nama tgz tidak sama dengan root_dir dari arsip, buat direktori tingkat atas
sumber
Ini lebih masuk akal bagi saya:
mkdir -p /create/folder && tar -zxf haroopad-v0.13.0_x64.tar.gz -C /create/testfolder
mkdir
membuat folder meskipun saya tidak begitu mengerti-p
saklar.&&
memungkinkan Anda menjalankan perintah kedua. Saya menggunakan switch tar yang khas tetapi pada akhirnya-C
digunakan untuk mengubah direktori dan mengekstrak ke lokasi yang diperlukan.referensi: ekstrak-file-yang terkandung di dalam arsip-tar-gz-ke-direktori-baru-bernama-arsip
sumber
/create
jika tidak ada.Jika Anda tidak tahu jalur yang harus dibuat ...
Dapatkan jalur yang diperlukan dari file tar, lalu buat jalur ...
sumber