SORU
22 Mayıs 2009, Cuma


-exec cmd {} bul, vs | xargs

Hangi dosyaların çok büyük bir set üzerinde daha fazla etkilidir ve kullanılmalıdır?

find . -exec cmd {}  

ya

find . | xargs cmd

(Dosya adları komik karakter yok varsayalım)

CEVAP
22 Mayıs 2009, Cuma


Hız farkı önemsiz olacaktır.

Ama emin olun:

  1. Senaryonu hiç kabul etmez dosya boşluk olacak, vb sekme dosya adı; ilk sürümüdür güvenli, ikinci değil.

  2. Senaryo senin değil tedavi bir dosya ile başlayan "-" bir seçenek olarak.

Kodunuzu bu gibi görünmelidir:

find . -exec cmd -option1 -option2 -- {}  

ya

find . -print0 | xargs -0 cmd -option1 -option2 --

İlk versiyonu sayabilirsiniz olarak yazmak daha kısa ve kolay 1, ama ikinci versiyonu daha taşınabilir ve güvenli, "-exec cmd {} " bir nispeten yeni bir seçenek GNU findutils (2005 yılından bu yana, çok çalışan sistemler olacak değil henüz) ve buggy recently. Ayrıca pek çok insan bunu bilmez "-exec cmd {} Diğer cevaplar gördüğünüz gibi.",

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CaptainDisillusion

    CaptainDisil

    18 EYLÜL 2007
  • Hak5

    Hak5

    7 EYLÜL 2005
  • superflyy88

    superflyy88

    8 ŞUBAT 2009