Bagi saya, berikut ini yang terbaik:
tar xvf some.tar --transform 's?.*/??g'
--transform argumen adalah regex pengganti untuk sed, yang setiap filepath yang diekstraksi diberi makan. Tidak seperti --strip-components , ini akan menghapus semua informasi jalur, bukan hanya memperbaiki jumlah komponen.
Jika Anda ingin menghapus n komponen utama pertama dari nama file, Anda memerlukan strip-components . Jadi dalam kasus Anda, saat mengekstraksi, lakukan
tar xvf tarname.tar --strip-components=2
Halaman manual memiliki daftar tar banyak pilihan, termasuk yang ini. Beberapa versi tar sebelumnya gunakan --strip-path untuk operasi ini sebagai gantinya.
Anda salah menggunakan -C switch, yang digunakan untuk mengubah direktori. Jadi yang perlu Anda lakukan adalah:
tar -cf tarname.tar -C /www/path path/file1.txt path2/path3/file2.xls
atau jika Anda ingin mengemas semuanya di bawah /www/path lakukan:
tar -cf tarname.tar -C /www/path .
Anda dapat menggunakan -C beralih beberapa kali.