2016-09-15 69 views
-1

我想要一個腳本遍歷目錄中的每個文件(包括子目錄)並返回總行數在所有文件中不包括空行排除文件夾/關鍵詞文件(日誌)在一個目錄內的多個子目錄中獲取文件的總行數(不包括黑線)

我現在有在文件一行代碼返回我行的總數(包括空行)單個目錄「文件」

cat /home/user/files/* | wc -l 

有什麼方法來實現,這樣我可以打電話,可以通讀代碼,例如:

- /home/user/files/* 
- /home/user/files/files2/* 
- /home/user/files/files2/files3/* 

一堆目錄(數目不詳),並返回我的所有文件(不包括空行)(但不包括文件夾/文件的行總數哈ve關鍵詞在他們(日誌))發現。

我目前使用BASH腳本,但如果在Python中有解決方案,我很樂意使用它。

+0

@ juanpa.arrivillaga我已經稍微更新了我的問題,我需要線的總數扣除空行。 –

回答

1

嘗試查找目錄中的所有文件遞歸(-type f標誌來查找)。 請注意,這也會打印出二進制文件,您的當前代碼也一樣。

find /home/user/files/ -type f -exec cat {} \; | wc -l 

編輯:在給定Use wc on all subdirectories to count the sum of lines--files-from解決方案更有效,因爲在這個問題掛評論

+0

感謝您的編輯。我只是想問問你的解決方案和http://stackoverflow.com/questions/13727917/use-wc-on-all-subdirectories-to-count-the-sum-of-lines –

+0

不理解你的答案,我稍微更新了我的問題,因爲我忘記在之前添加它 - 我需要它返回我的總行數(不包括空行) –

+0

沒問題。它是你計算的代碼文件嗎?如果是這樣,那麼有很多代碼(loc)分析工具可用於持續集成服務器。 – jedifans

相關問題