2013-05-13 46 views
1

我有一堆文件,需要檢查所有非空的文件。我可以找到這些文件,例如通過運行我可以將文件從find發送到less嗎?

find *e* -maxdepth 1 -size +0 -print 

但是,如果我添加| less上面,我只是能看到的文件,而不是文件本身的列表。

如果我手動給這個文件列表作爲參數傳遞給less file1.e file2.e file3.e等),我得到了我想要的東西,而這種累贅。有什麼辦法,我可以管的輸出找到直接少

回答

4

要依次對每個文件運行less

find *e* -type f -maxdepth 1 -size +0 -exec less {} \; 

或:

find *e* -type f -maxdepth 1 -size +0 | xargs less 

到整個列表上運行less(假設文件的數量並不大 - xargs的限制最高不通常爲5000的參數)。

注意添加-type f,這樣你就不會從find返回目錄。

+1

注意,後者可以調用'less'不止一次,所以不能保證目前的*整個列表*。 – Jens 2013-05-13 12:37:33

+0

@Jens:好點 - 我現在已經添加了一個資格。 – 2013-05-13 12:42:35

+1

+1傾聽建設性的批評:-) – Jens 2013-05-13 13:24:01

相關問題