2011-06-16 100 views
-1

我有一個包含許多源代碼文件的文件夾。目錄中所有文件的行數

我想查找目錄中所有文件中源代碼的總行數。

有沒有簡單的方法來做到這一點?

這些是cobol文件,我沒有開放工具可以打開它們,所以我不能只運行代碼度量。

+1

您可能想要提供更多上下文。 – 2011-06-16 10:40:34

+0

屬於http://superuser.com? – 2011-06-16 10:53:35

回答

1

使用SLOCCOUNT一個衆所周知的免費的代碼計數源代碼行。

它支持COBOL並使用COCOMO模型來估計工作量和時間表。

5

假設你使用* nix中,Mac OS X或甚至cygwin的Windows下:

$ wc -l * 

如果要包含子目錄,那麼你可以做這樣的:

$ find . -type f -print0 | xargs -0 wc -l 

如果您只需要總計(即跳過每個文件的所有單獨行數),然後管到tail,例如

$ find . -type f -print0 | xargs -0 wc -l | tail -1 
+0

這不是遞歸的,但如果沒有子目錄,那麼這將工作得非常好! – Flimzy 2011-06-16 10:43:09

+0

@Flimzy:好點 - OP沒有提到有關子目錄或需要遞歸的任何內容 - 他只是說「一個目錄」 - 但我會添加一個遞歸版本以防萬一... – 2011-06-16 10:48:31

1

一個非常快速的正骯髒的方式獲得接近,但不完全一樣,計數將是:

tar -c /path/to/source/code | wc -l 

這是不完全準確的,因爲焦油之初增加了一些垃圾,以及每個文件之間。如果你的源代碼路徑中有任何非ascii文件,那也會拋出一些東西。

+0

首先,它不會在窗戶上工作,這是提問者要求的 – Markasoftware 2013-10-11 00:05:18

+0

@Markasoftware:當我提供答案時,這不是用戶所要求的。但即便如此,這個答案可以在Windows中有效,與Paul R的答案一樣。 – Flimzy 2013-10-11 00:18:44

+0

它有一個標籤「windows」,但不是註釋「linux」或「unix」或「mac」 – Markasoftware 2013-10-11 00:20:22