各位看官們,咱們今天還是接着上一回的内容,列舉具體的例子給大家。閑話休說,言歸正轉。
各位看官們,在實際的工作中經常需要統計代碼行數。不知道看官們有什麼好的統計方法?大家都不說話。
看來是沒有,接下來咱們說幾種方法來統計代碼行。
使用工具統計代碼行:現在的內建開發工具都有顯示行号的功能。比如Visual Studio系列,Eclipse。
大部分的文本工具也能顯示檔案行号,比如咱們前面說的Gedit,Vim.Windows環境下的Notepad++等。
使用這些工具打開檔案,然後打開顯示行号的功能,到檔案尾就能清楚的看到檔案的行号,通過工具看到
的行号和代碼行數是等價的。
使用指令統計代碼行:Linux中cat和wc指令都可以統計檔案的行數。具體的指令如下:
cat -n FileName。或者cat -b FileName.
wc -l FileName
接下來咱們通過舉例子來說明,如何使用這些指令來統計代碼行。
首先打開/home/test/a.c并且輸入以下内容,然後儲存該檔案。
#include<stdio.h>
int main(void)
{
printf("hello \n");
return 0;
}
打開終端,在終端中輸入cat -n /home/test/a.c指令,執行該指令後可以得到以下結果:
1 #include<stdio.h>
2
3 int main(void)
4 {
5 printf("hello \n");
6 return 0;
7 }
看官們可以看到該指令實際上是在代碼前面加了行号,它和使用工具統計代碼行的方法在本質上相同。
在終端中輸入cat -b /home/test/a.c指令,執行該指令後可以得到以下結果:
1 #include<stdio.h>
2 int main(void)
3 {
4 printf("hello \n");
5 return 0;
6 }
看官們,對比這兩個指令的結果,可以看到,選項n可以給所有行加上行号,選項b隻給非空白行加行号,
如果不想統計空白行,或者說想統計有效的代碼行,可以使用選項b。
在終端中輸入:wc -l /home/test/a.c指令,執行該指令後可以得到以下結果:
7 /home/test/a.c
該結果前面的數字7表示a.c檔案中有7行代碼。
對比cat和wc這兩個指令可以發現,cat指令是通過顯示行号的方式來統計代碼行,它不僅統計了代碼行
數,而且也把每行的内容顯示了出來。wc指令隻顯示具體的行數,不會顯示每行的内容。從這兩個指令的
執行結果可以看出,wc在統計代碼行數上更加專業一些。
看官們,在實際的工作中,需要統計的檔案通常不止一個,下面通過例子來介紹一種統計多個檔案代碼行
的方法。在/home/test/目錄中再建立2個和a.c内容一樣的檔案,分别取名叫a1.c和a2.c。然後在終端中執
行下面的指令:
find /home/test/ -name "*.c" | xargs wc -l
指令執行的結果如下:
7 /home/test/a.c
7 /home/test/a1.c
7 /home/test/a2.c
該指令結合了find和wc兩種指令,它把find指令的結果當作了wc指令的操作對象,這主要歸功于管道和
xargs指令。find指令的結果通過管道變成了xargs指令的輸入,而xargs指令又把它的輸入當作參數傳
遞給了wc指令,是以達到了統計多個檔案代碼行數的效果。
各位看官們,今天的例子就到此為止,欲知後面還有什麼好的例子,且聽下回分解。