Benim için bazı işlemleri yapmak için bir senaryo hazırladım. *Bir türdeki tüm dosyalara işlev uygulamak için joker karakter operatörünü kullanıyorum , ancak anlamadığım bir şey var. unzipBöyle bir klasördeki tüm dosyaları yapabilirim
unzip "*".zip
Ancak, daha sonra tüm zip dosyalarını kaldırmak için yapmanız gereken
rm *.zip
Yani, tırnak işaretleri istemiyor. Diğer taraftan, unzip, sadece * verdiğimde çalışmaz (bana "dosyalar eşleşmedi" uyarısı verir).
Bu neden farklı? Bana göre bu aynı operasyon gibi görünüyor. Yoksa joker kartı yanlış mı kullanıyorum?
Yabani karta Tanıtımları Unix gerçekten bu işe gitmez, ben bir şey bulamadı rmveya zipdokümanlar.
Mac üzerindeki terminali kullanıyorum (Yosemite).
unzipglob'u bir arşivin içeriğine uygular; Bir joker ile bash onları alamazsınız. (F 'için `` gerekir unzip -l archive.zip;; bitti')
unzipTek bir zip dosyası içinde eşleşmek üzere küre kabul etmeyi biliyordum . Ancak bu farklı; Aslında unzip '*.zip'birden fazla zip dosyasının bulunduğu bir dizinde denedim ve tüm dosyaları tüm fermuarlardan ayıklar. Dediğim gibi, süper garip. tarBöyle bir işlem modu yok.
unzipNormalfor f in *.zip;do...donekabuk döngüsü olmadan bunu yapabileceği hakkında hiçbir fikrim yoktu . Böyle garip bir unix benzeri olmayan komut satırı UI.