Directory
如何使用 cloc 在 debian 包中查找程式碼行
cloc - 統計程式碼行數的實用程序
現在手冊頁提到它可以用來計算 tarball 的程式碼行數
cloc perl-5.10.0.tar.gz
現在一個 debian 包就像一個壓縮的 tarball。有沒有辦法使用 cloc.
我試過 :-
[$] cloc cloc_1.60-1.1_all.deb 0 text files. 0 unique files. 1 file ignored.
輸出不正確。我試圖查看 debian 包中有多少文件並看到:-
[$] dpkg -L cloc /. /usr /usr/share /usr/share/man /usr/share/man/man1 /usr/share/man/man1/cloc.1.gz /usr/share/doc /usr/share/doc/cloc /usr/share/doc/cloc/changelog.Debian.gz /usr/share/doc/cloc/changelog.gz /usr/share/doc/cloc/copyright /usr/bin /usr/bin/cloc
所以要麼是 cloc 中的錯誤,要麼我沒有正確應用它。作為記錄,我已經下載了 cloc 的 debian 包以用作範例(因為它很小)。
[$] ls -lh cloc_1.60-1.1_all.deb -rw-r--r-- 1 shirish shirish 88K Jul 24 2015 cloc_1.60-1.1_all.deb
期待答案。
您需要
cloc
在源包上執行,而不是在二進制包上執行——cloc_1.60-1.1_all.deb
是二進制包。這有效:
dget -d http://httpredir.debian.org/debian/pool/main/c/cloc/cloc_1.60-1.1.dsc cloc cloc_1.60.orig.tar.gz
並顯示
12 text files. 7 unique files. 9 files ignored. http://cloc.sourceforge.net v 1.60 T=0.05 s (57.3 files/s, 176957.8 lines/s) ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- Perl 2 666 978 7477 make 1 26 35 75 ------------------------------------------------------------------------------- SUM: 3 692 1013 7552 -------------------------------------------------------------------------------
dget
通過給定的描述符下載源包,並-d
告訴它不要提取源。您會dget
在devscripts
包裝中找到。