2015-10-14 44 views
2

需要find2perl的幫助。本來我是在執行通常的:如何在find2perl和File :: Find中使用-not開關

my @files = `find . | grep -v "*.svn"`; 

這個工作很好,直到源樹長而大,造成上述比較嚴重的放緩。所以我切換到這一點:

my @files = `find . -not \(-path *.svn -prune \)`; 

這幫助了很多,但隨着時間的推移它也已成爲相當緩慢。

我讀過這裏的文件::查找應該/會比脫殼更快,但我似乎無法得到find2perl爲我創建$想要的子例程引用。它給我以下錯誤:

find2perl . -not \(-path *.svn -prune \) -print 
Unrecognized switch: -not 

有沒有其他方式我應該這樣做? 感謝您的幫助和建議。

回答

1

-not不是find標準選項,您需要使用!

find2perl . ! \(-path '*.svn' -prune \) -print 

另外請注意,您必須引用*.svn,以防止外殼上進行拆分+水珠。

+0

非常感謝,修好了!我從來不知道 - 不是標準。 – Blackthorne

相關問題