Ekstrak file tertentu dalam arsip tar menggunakan wildcard

15

Saya mencoba membuat skrip untuk mengekstrak hanya gambar jpeg dari arsip yang berisi banyak jenis file.

Untuk melakukannya, saya mencoba menggunakan:

   tar -xf MyTar.tar *.jpg

tetapi gagal (* .jpg tidak ditemukan) dan menyarankan saya untuk menggunakan "--wildcard". Jadi saya mencoba

tar -xf MyTar.tar --wildcard *.jpg

Saya melakukan itu, tetapi kemudian kesalahan yang sama dan peringatan yang berbeda mengatakan kepada saya bahwa opsi "--wildcard" adalah ambigu.

Saya telah membaca halaman manual untuk tar, tetapi tidak menemukan petunjuk tentang masalahnya.

AdrieanKhisbe
sumber
Tar mana dan versi apa? Tempel hasil daritar --version
smci

Jawaban:

28

Pada akhirnya, saya menemukan kemudian menjawab setelah istirahat yang baik. Pilihannya adalah wildcard s , jamak ...

Jadi perintahnya

tar -xf MyTar.tar --wildcards "*.jpg"

melakukan apa yang saya butuhkan.

AdrieanKhisbe
sumber
3

Letakkan tanda kutip di sekitar wildcard seperti ini "*.jpg"sehingga shell tidak akan mencoba mengembangkannya dan sebaliknya akan meneruskannya langsung ke tar. Anda ingin tar mengevaluasi wildcard, bukan shell dan tanda kutip yang melakukannya.

Nicole Hamilton
sumber