2010-05-18 9 views

cevap

7
grep -l firstmatch * | xargs grep secondmatch {} 
+3

Tavsiye ederim: 'grep -l firstmatch | xargs grep - ikinci eşleşme. Bu, grep'in mümkün olduğunca az sayıda çağrılmasına neden olur. Ayrıca -I {} '(veya artık kullanılmayan -i) olmadan parantez yorumlanmayacaktır. Ayrıca, komutunuz grep'in ilk grep çağrısı tarafından bulunan her dosya için çalıştırılmasına neden olur ve '{}' (veya grep değişkeninize bağlı olarak yerine koyması) için grep olacaktır. –

+0

xargs ile ne demek istiyorsun? – NSA

+2

@NSA: 'xargs' bir komuttur. Bir argüman listesi (normalde dosya isimleri) için standart girdisini okur ve daha sonra komutun argümanlarıyla birleştirir (bu durumda ''grep {} secondmatch' '), çalıştırılan komutları oluşturur. Daha fazla bilgi için, RTFM –