快速入门 概述 下载 许可证 为什么使用cloc? 其他计数器 构建Windows可执行文件 基本用途 选项 公认的语言 它的工作原理 高级使用 复杂正则子表达式递归限制 限制 请求支持其他语言 报告问题 引用 致谢 版权
提示>cloc hello.c 1个文本文件。 1个唯一文件。 0个文件被忽略。 https://github.com/AlDanial/cloc v 1.65 T=0.04秒(28.3个文件/秒,340.0行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 丙10 7 5 -------------------------------------------------------------------------------
提示>cloc gcc-5.2.0/gcc/c 16个文本文件。 15个唯一文件。 忽略了3个文件。 https://github.com/AlDanial/cloc v 1.65 T=0.23 s(57.1个文件/秒,188914.0行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 丙10 4680 6621 30812 C/C++标题3 99 286 496 ------------------------------------------------------------------------------- 金额:13 4779 6907 31308 -------------------------------------------------------------------------------
提示>wget https://github.com/AlDanial/cloc/archive/master.zip 提示>cloc master.zip https://github.com/AlDanial/cloc v 1.65 T=0.07秒(26.8个文件/秒,141370.3行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 波尔2 725 1103 8713 ------------------------------------------------------------------------------- 金额:2 725 1103 8713 -------------------------------------------------------------------------------
提示>git克隆 https://github.com/inducer/pudb.git 提示符>cd pudb 提示>cloc 6be804e07a5db 48个文本文件。 41个唯一文件。 8个文件被忽略。 github.com/AlDanial/cloc v 1.99 T=0.04秒(1054.9个文件/秒,189646.8行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 蟒蛇28 1519 728 4659 重组文本6 102 20 203 亚马尔2 9 2 75 伯恩壳牌3 6 0 17 文本1 0 0 11 制作1 4 6 10 ------------------------------------------------------------------------------- 金额:41 1640 756 4975 -------------------------------------------------------------------------------
提示>输入d./*/; do(cd“$d”&&echo“$d“&&cloc--vcs-git); 完成 ./项目0/ 7个文本文件。 7个独特的文件。 1个文件被忽略。 github.com/AlDanial/cloc v 1.71 T=0.02秒(390.2个文件/秒,25687.6行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 丁4 61 32 251 降价1 9 0 38 生成1 0 0 4 ------------------------------------------------------------------------------- 金额:6 70 32 293 ------------------------------------------------------------------------------- ./项目1/ 7个文本文件。 7个独特的文件。 0个文件被忽略。 github.com/AlDanial/cloc v 1.71 T=0.02秒(293.0个文件/秒,52107.1行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 去7 165 282 798 ------------------------------------------------------------------------------- 金额:7 165 282 798 ------------------------------------------------------------------------------- ./项目2/ 49个文本文件。 47个独特的文件。 13个文件被忽略。 github.com/AlDanial/cloc v 1.71 T=0.10秒(399.5个文件/秒,70409.4行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 蟒蛇33 1226 1026 3017 川4 327 337 888 降价1 11 0 28 亚马尔1 0 2 12 ------------------------------------------------------------------------------- 金额:39 1564 1365 3945 -------------------------------------------------------------------------------
对于(.\*)中的/D%I,请执行cd%I&&cloc--vcs git&&cd。。
装卸工运行--rm-v $PWD(美元) :/tmp阿尔巴尼亚语/cloc
装卸工运行--rm-v " / $( 压水-水 ) " :/tmp阿尔巴尼亚语/cloc
npm安装-g cloc# https://www.npmjs.com/package/cloc sudo apt安装cloc#Debian,Ubuntu sudo yum-install cloc#红帽,Fedora sudo-dnf install cloc#Fedora 22或更高版本 sudo pacman-S cloc#架构 sudo emerge-av dev-util/cloc#Gentoo https://packages.gentoo.org/packages/dev-util/cloc sudo apk add cloc#Alpine Linux doas pkg_add cloc#OpenBSD sudo-pkg安装cloc#FreeBSD sudo端口安装cloc#macOS with MacPorts brew使用Homebrew安装cloc#macOS 翼安装AlDanial。 Cloc#带winget的Windows choco安装cloc#Windows with Chocolatey spop安装cloc#带scoop的Windows
作为一个独立的文件存在,只需要很少的安装工作量——只需下载文件并运行即可。 可以从文件中读取语言注释定义,因此可以使用尚未存在的计算机语言。 允许按语言和项目将多次运行的结果汇总在一起。 可以以多种格式生成结果:纯文本、SQL、JSON、XML、YAML、逗号分隔值。 可以统计压缩档案中的代码(tar balls、Zip文件、Java.ear文件)。 有许多故障排除选项。 使用空格和其他异常字符处理文件和目录名。 在标准Perl发行版之外没有依赖项。 在Linux、FreeBSD、NetBSD、OpenBSD、macOS、AIX、HP-UX、Solaris、IRIX和z/OS系统上运行,这些系统具有Perl 5.6或更高版本。 源版本在Windows上运行,带有ActiveState Perl、Strawberry Perl、Cygwin或MobaXTerm+Perl插件。 或者,在Windows上可以运行没有依赖项的Windows二进制文件。
C: >cpan-i摘要::MD5 C: >cpan-i Regexp::通用 C: >cpan-i算法::Diff C: >cpan-i PAR::封隔器 C: >cpan-i Win32::LongPath C: >pp-M Win32::LongPath-M编码::Unicode-M摘要::MD5-C-x-o cloc-2.00.exe cloc-2.00.pl
提示>cloc perl-5.22.0.tar.gz 5605个文本文件。 5386个唯一文件。 2176个文件被忽略。 https://github.com/AlDanial/cloc v 1.65 T=25.49秒(134.7个文件/秒,51980.3行/秒) ----------------------------------------------------------------------------------- 语言文件空白注释代码 ----------------------------------------------------------------------------------- 波尔2892 136396 184362 536445 丙130 24676 33684 155648 C/C++标题148 9766 16569 147858 伯恩壳牌112 4044 6796 42668 帕斯卡8 458 1603 8592 XML 33 142 0 2410 亚马尔49 20 15 2078 C++10 313 277 2033电话 制造4 426 488 1986 序言12 438 2 1146 JSON 14 1 0 1037标准 yacc 1 85 76 998 Windows消息文件1 102 11 489 DOS批次14 92 41 389 Windows资源文件3 10 0 85 D 1 5 7 8日 Lisp 2 0 3 4 ----------------------------------------------------------------------------------- 金额:3434 176974 243934 903874 -----------------------------------------------------------------------------------
提示>cloc--帮助 用法:cloc[选项]<文件/目录/git散列>|<集1><集2>|<报告文件> 在 给定的文件(可能是压缩的tarball或zip文件等存档文件, 或git提交哈希或分支名称)和/或递归地位于 给定的目录。 输入选项 --extract-with=<cmd>仅当cloc无法使用时才需要此选项 找出如何提取 输入文件本身。 使用<cmd>提取二进制存档文件(例如: .tar.gz、.zip、。 Z) ●●●●。 使用文字'>FILE<'作为 实际文件的替补 提取。 例如,计算代码行数 在输入文件中 gcc-4.2.tar.gz perl-5.8.8.tar.gz文件 关于Unix的使用 --extract-with='gzip-dc>文件<|tar xf-' 或者,如果您有GNU tar, --extract-with='tar zxf>FILE<' 和在Windows上使用,例如: --extract-with=“\”c:\Program Files\WinZip\WinZip32.exe\“-e-o>FILE<” (如果安装了WinZip)。 --list-file=<file>将文件和/或目录名列表 来自<file>的进程,其中有一个文件/目录 每行的名称。 只计算精确匹配; 相对路径名将从开始解析 调用cloc的目录。 设置<文件> to-从STDIN管道读取文件名。 另请参阅--exclude-list-file。 --diff-list-file=<file>获取要比较的文件名对 <file>,其格式与 --差异对齐。 (使用该选项运行以 请参阅示例。) 位于的语言标识符 忽略每行的末尾。 这将启用--diff 模式并绕过文件对对齐逻辑。 --vcs=<vcs>调用对<vcs]的系统调用以获取 文件。如果<VCS>为“git”,则将 调用“git-ls-files”获取文件列表 “git子模块状态”以获取子模块列表 其内容将被忽略。 另请参见--git 它接受git提交哈希和分支名称。 如果<VCS>是“svn”,那么将调用“svn list-R”。 主要好处是cloc将跳过 版本控制工具明确排除的文件 有疑问的是,gitinore或 svn:忽略属性。 或者,<VCS>可以是任何系统命令 生成文件列表的。 注意:cloc必须位于可以读取的目录中 <VCS>返回的文件。 cloc将 不从远程存储库下载文件。 “svn list-R”可能指远程存储库 获取文件名(因此可能需要 远程存储库的身份验证),但 文件本身必须是本地的。 将<VCS>设置为“自动”可在“git”之间进行选择 和“svn”(或两者都不)取决于是否存在 目录下的.git或.svn子目录的 其中调用cloc。 --unicode检查二进制文件是否包含unicode 展开的ASCII文本。 这将导致性能 明显下降。 处理选项 --autoconf计数.in文件(由GNU autoconf处理) 公认的语言。 另请参阅--no-autogen。 --按文件报告遇到的每个源文件的结果。 --by-file-by-lang报告遇到的每个源文件的结果 除了用语言报道之外。 --config<file>Read命令行从<file>切换而不是 /home/al/.config/cloc/options.txt的默认位置。 该文件应包含一个开关,以及 参数(如果有),每行。 空行和空行 跳过以#开头的。 上给出的选项 命令行优先于读取的条目 文件。 --计数和差异<set1><set2> 首先执行源文件的直接代码计数 分别对<set1>和<set2>进行比较 其中之一。 输入可以是成对的文件、目录、, 或档案。 如果给出--out或--report-file, 将创建三个输出文件,每个文件一个 两个计数中的一个计数和一个计数的差异。另请参阅 --差异,--差异对齐,--差异超时, --ignore-case,--ignore-whitespace。 --diff计算代码和注释之间的差异 <set1>和<set2>的源文件。 输入 可以是文件、目录、档案、, 或git提交散列。 使用--diff对齐 生成一个列表,其中显示哪些文件对 相比。 比较git分支时,仅文件 将比较在任一提交中更改的。 另请参见--git、--count-and-diff、--diff-alignment、, --diff-list-file、--diff-timeout、--ignore-case、, --无知的白脸。 --diff-timeout<N>忽略耗时超过<N>秒的文件 进行处理。 默认值为10秒。 设置<N> 0允许无限时间。 (包含许多 重复的行可能会导致Algorithm::Diff::sdiff() 需要几个小时。) 另请参阅--超时。 --docstring-as-code-cloc将docstring视为注释,但这是 由于docstrings表示常规,因此并不总是正确的 字符串,当它们出现在 赋值或作为函数参数。 这个开关 强制将文档字符串计算为代码。 --follow-links[仅限Unix]遵循指向目录的符号链接 (始终遵循指向文件的sym链接)。 另请参阅--stat。 --force-lang=<lang>[,<ext>] 处理扩展名为<ext>的所有文件 带有语言<lang>的计数器。 对于 例如,使用 Fortran 90计数器(它要求文件 以.f90结尾),而不是默认的Fortran 77 计数器,使用 --force-lang=“Fortran 90,f” 如果省略<ext>,将计算每个文件 使用<lang>计数器。 此选项可以是 多次指定(但仅 每次指定<ext>时很有用)。 另请参见--script-lang和--lang-no-ext。 --force lang def=<file>从<file>加载语言处理过滤器, 然后使用这些过滤器而不是内置的 过滤器。 注:映射到相同的语言 文件扩展名(例如: MATLAB/Mathematica/Objective-C/MUMPS/Mercury; 帕斯卡/菲律宾比索; Lisp/OpenCL; Lisp/Julia; Perl/Prolog) 将被忽略,因为这些需要额外的 非语言表达的处理 定义文件。 使用--read-lang-def定义 不替换内置的新语言筛选器 过滤器(另请参见--write-lang-def, --write-lang-def-incl-dup)。 --git强制将输入解释为git目标 (提交散列、分支名称等)如果这些 不是首先标识为文件或目录 名称。 此选项覆盖--vcs=git逻辑 如果给出; 换句话说,--git得到了它的 使用从git直接处理的文件列表 哈希或分支名称,而不是来自 “git ls-files”。 此选项可以与一起使用 --diff执行git之间的行计数差异 提交,或在git提交和文件之间, 目录或存档。 使用-v/--verbose查看 git系统命令cloc问题。 --git-diff-rel与--git--diff相同,如果输入为--diff 被视为git目标。 只有以下文件 比较两次提交中的更改。 --git-diff-all git-diff策略#2:比较 两次提交之间的存储库。 --忽略空白比较文件时忽略水平空白 带--diff。另请参阅--ignore-case。 --忽略文件内容中大小写的更改; 考虑大小写字母等价 与--diff比较文件时。另请参阅 --无知的白脸。 --ignore-case-ext忽略文件扩展名的大小写。 这将 导致计算某些语言时出现问题 (具体来说,.c和.c与c和 C++; 这个开关很重要。 将C文件改为C文件 *nix操作系统上的C++)。 文件名 在Windows上,不区分大小写总是正确的。 --lang-no-ext=<lang>使用<lang>统计不带扩展名的文件 计数器。 此选项覆盖内部逻辑 对于不带扩展名的文件(此类文件 根据已知的脚本语言进行检查 通过检查第一行中的!)。 另请参见 --强制lang,--script-lang。 --max-file-size=<MB>跳过大于<MB>MB的文件 遍历目录。 默认情况下,<MB>=100。 cloc的内存需求大约是20倍 大于与一起运行的最大文件 小于100 MB的计算机上的文件 超过2 GB的内存将导致问题。 注意:此检查不适用于文件 作为命令行参数显式传递。 --no-autogen[=list]忽略代码生成系统生成的文件 例如GNU autoconf。 查看这些文件的列表 (然后退出),使用--no-autogen list运行 另请参见--autoconf。 --original-dir[仅在与 --strip-comments]编写剥离的文件 到与原始文件相同的目录中。 --读取二进制文件除了处理文本文件外,还处理二进制文件。 这通常是个坏主意,应该是 尝试使用嵌入的文本文件 二进制数据。 --read-lang-def=<file>从<file>加载新的语言处理过滤器 并将其与cloc已知的内容合并。 如果<文件>定义了cloc已经知道的语言 关于,cloc的定义将优先考虑。 使用--force-lang-def超越cloc 定义(另请参阅-write lang-def, --write-lang-def-incl-dup)。 --script-lang=<lang>,<s>将调用<s>的所有文件处理为#! 带有语言计数器的脚本语言 <语言>。 例如,以开头的文件 #!/ usr/local/bin/perl5.8.8 将使用Perl计数器进行计数 --script-lang=Perl,perl5.8.8 语言名称不区分大小写,但 脚本语言可执行文件的名称,<s>, 必须有正确的案例。 此选项可以是 多次指定。 另请参见——力拉, --语言-外部。 --sdir=<dir>使用<dir>作为暂存目录,而不是 让File::Temp选择位置。 文件夹 写入此位置的内容不会在删除 运行结束(与File::Temp相同)。 --skip-uniquety跳过文件唯一性检查。 这将给 以计数为代价的性能提升 多次使用相同内容的文件 (如果存在重复项)。 --stat一些文件系统(AFS、CD-ROM、FAT、HPFS、SMB) 没有匹配的目录“nlink”计数 其子目录的数量。 因此 cloc可能会低估或完全跳过 此类文件系统的内容。 此开关强制 文件::查找stat目录以获取 正确计数。 文件搜索速度将降低。 另请参见——follow-links。 --stdin-name=<file>提供用于确定语言的文件名 用于标准输入。 (使用-作为的输入名称 通过STDIN接收源代码。) --strip-comments=<ext>对于处理的每个文件,写入当前 目录具有空白的文件版本 删除了和注释行(内嵌注释 坚持)。 每个剥离文件的名称是 具有的原始文件名< 附加了ext>。 它被写入当前目录,除非 --original-dir已打开。 --strip str comments将嵌入字符串中的注释标记替换为 “xx”。 这试图绕过限制 在Regexp::Common::Comment中的注释标记处 嵌入字符串的内容被视为实际注释 标记而不是字符串,通常会导致 '复杂正则子表达式递归限制' 警告和错误计数。 有两个 使用此开关的缺点:1/代码计数 性能下降,2/代码生成 --条带注释将包含不同的字符串 在哪里可以找到嵌入的注释。 --sum-reports输入参数以前是报告文件 使用--report-file选项创建 格式(例如,不是JSON、YAML、XML或SQL)。 生成包含 单个报告文件中的数据总和。 --timeout<N>忽略耗时超过<N>秒的文件 在语言的任何过滤阶段进行处理。 默认的最大花费秒数 filter stage是文件中的行数 除以1000。 将<N>设置为0允许 无限时间。 另请参阅--diff超时。 --processes=NUM[仅在具有最新版本的系统上可用 Parallel::ForkManager模块的。 不是 在Windows上可用。] 设置最大数量 cloc使用的核心。 默认值为0 禁用多处理。 --unix覆盖操作系统自动检测 逻辑并在UNIX模式下运行。 另请参见 --窗口,--show-os。 --use-sloccount如果安装了sloccount,请使用其编译的 可执行文件计数、javacount、pascalcount, php_count和xml_count,而不是cloc的 计数器。 SLOCCount的编译计数器为 比cloc快得多,可能会 计算项目时的性能改进 使用大文件。 然而,这些cloc-specific 功能将不可用:--diff, --count-and-diff,--strip-comments,--unicode。 --windows覆盖操作系统自动检测 逻辑并在Microsoft Windows模式下运行。 另请参见--unix,--show-os。 过滤器选项 --include-content=<regex>仅统计包含与 给定正则表达式。 --exclude-content=<regex>排除包含与给定文本匹配的文本的文件 正则表达式。 --exclude-dir=<D1>[,D2,]排除给定的逗号分隔的目录 D1、D2、D3等。 对于 示例--exclude dir=.cache,测试将跳过 具有/.cache的所有文件和子目录/ 或/test/作为其父目录。 名为.bzr、.cvs、.hg、.git、.svn、, 和.snapshot始终被排除在外。 此选项仅适用于单个目录 名称,因此不包括文件路径分隔符 允许。 使用--fullpath和--not-match-d=<regex> 提供匹配多个子目录的正则表达式。 --排除ext=<ext1>[,<ext2>[…]] 不计算具有给定文件名的文件数 扩展名。 --exclude-lang=<L1>[,L2[…]] 排除给定的逗号分隔语言 L1、L2、L3等。 --exclude-list-file=<file>忽略名称为 出现在<文件>中< file>应该有一个文件 每行的名称。 只忽略精确匹配; 相对路径名将从开始解析 调用cloc的目录。 另请参见--list-file。 --fullpath修改--match-f、--not-match-f的行为, 和--not-match-d以包含文件的路径 在regex中,不仅仅是文件的basename。 (这不会展开每个文件以包括其 绝对路径,而是使用 传入cloc的路径as。) 注意:--match-d始终查看完整 路径,因此不受--fullpath的影响。 --include-ext=<ext1>[,ext2[…]] 仅统计具有给定逗号的语言 分开的文件扩展名。 使用--show-ext to 请参阅已识别的扩展。 --include-lang=<L1>[,L2[…]] 仅统计给定的逗号分隔语言 L1、L2、L3等。 使用--show lang查看 公认语言列表。 --match-d=<regex>仅统计与Perl匹配的目录中的文件 正则表达式。 例如 --match-d=“/(src|include)/” 仅统计包含以下内容的目录中的文件 /src/或/include/。 与--not-match-d不同, --match-f和--not-match-f,--match-d总是 将完全限定的路径与 正则表达式。 --not-match-d=<regex>统计除目录中的文件以外的所有文件 匹配Perl正则表达式。 只有尾部 比较目录名,例如,当 在/usr/local/lib中计数,只有“lib”是 与正则表达式相比。 添加--比较父目录的完整路径 正则表达式。 在 正则表达式的开始或结束。 --match-f=<regex>只计算基名称与Perl匹配的文件 正则表达式。 例如 --match-f=“^[Ww]idget” 仅统计以小部件或小部件开头的文件。 添加--包含父目录的完整路径 在regex中,而不仅仅是basename。 --not-match-f=<regex>统计除基本名称以外的所有文件 匹配Perl正则表达式。 添加--要包含的完整路径 regex中的父目录,而不仅仅是 基本名称。 --skip-archive=<regex>忽略以给定Perl规则结尾的文件 表达式。 例如,如果给定 --skip-archive='(zip|tar(.(gz|Z|bz2|xz|7z))?)' 代码将跳过以.zip结尾的文件, .tar、.tar.gz、.tar。 Z、 .tar.bz2、.tar.xz和 .焦油.7z。 --跳过隐藏的胜利在Windows上,忽略隐藏的文件。 弹出调试操作 --categorized=<file>以字节、标识语言保存文件大小 和分类文件的名称到<file>。 --counted=<file>将已处理源文件的名称保存到<file>。 --diff-alignment=<file>写入<file>文件和文件对列表 显示添加、删除和/或 在运行期间与--diff进行比较。此开关 强制启用--diff模式。 --explain=<lang>打印用于删除的注释的筛选器 语言<lang>并退出。 在某些情况下 过滤器引用Perl子例程,而不是 正则表达式。 对 进一步解释可能需要源代码。 --help打印此使用信息并退出。 --found=<file>将找到的每个文件的名称保存到<file>。 --忽略=<file>保存被忽略文件的名称及其原因 被忽略为<file>。 --打印筛选阶段打印处理后的源代码 应用每个过滤器。 --show-ext[=<ext>]打印所有已知(或仅 给定)文件扩展名和退出。 --show-lang[=<lang>]打印所有已知(或仅 给定)语言和出口。 --show-os打印操作系统模式的值 然后退出。 另请参见--unix,--windows。 -v[=<n>]详细开关(可选数值)。 -verbose[=<n>]-v的长形式。 --version打印此程序的版本并退出。 --write-lang-def=<file>写入语言处理过滤器 然后退出。 作为创建的第一步很有用 自定义语言定义。 注:语言 映射到相同的文件扩展名将被排除。 (另请参阅--force lang-def,--read lang-def)。 --write-lang-def-incl-dup=<文件> 与--write-lang-def相同,但包括重复的 扩展名。 这会产生一种有问题的语言 定义文件,因为cloc将拒绝使用 直到删除重复项。 输出选项 --3打印第三代语言输出。 (此选项可能导致报告汇总失败 如果使用此选项生成某些报告 而其他产品则没有。) --以百分比X代替注释和空行计数,显示 这些值是基于值的百分比 X的分母: X=“c”->代码行数 X=“cm”->代码行数+注释 X=“cb”->代码行数+空格 X=“cmb”->代码行数+注释+空格 例如,如果使用方法“c”和代码 评论行数是行数的两倍 对于代码,注释列中的值将 为200%。 代码列仍为行计数。 --csv将结果写为逗号分隔的值。 --csv-delimiter=<C>使用字符<C>作为逗号的分隔符 分隔文件,而不是,。 此开关强制打开--csv。 --file-encoding=<E>使用<E>编码而不是 默认ASCII码(<E>=“UTF-7”)。 示例:“UTF-16”, ‘euc-kr’,‘iso-8859-16’。 已知编码可以是 用打印 perl-MEncode-e'打印连接(“\n”,Encode->encodings(“:all”)),“\n”' --隐藏速率在 输出标题。 这使得输出具有确定性。 --json将结果写成JavaScript对象符号 (JSON)格式的输出。 --md将结果写为Markdown格式的文本。 --out=<file>同义词--report-file=<file>。 --progress-rate=<n>在每个<n>文件 已处理(默认<n>=100)。 将<n>设置为0至 抑制进度输出(重定向时有用 输出到STDOUT)。 --quiet取消显示除之外的所有信息消息 最终报告。 --report-file=<file>将结果写入<file>而不是STDOUT。 --sql=<file>将结果写入sql create和insert语句 可以由数据库程序读取,例如 苏莱特。 如果<file>为-,则输出发送到STDOUT。 --sql-append将sql插入语句附加到指定的文件 by--sql,不生成表创建 声明。 仅对--sql选项有效。 --sql-project=<name>使用<name>作为 当前运行。 仅对--sql选项有效。 --sql-style=<style>改用给定样式编写sql语句 默认SQLite格式。 样式包括 “Oracle”和“Named_Columns”。 --sum-one对于纯文本报告,显示sum:输出行 即使只处理一个输入文件。 --xml用xml编写结果。 --xsl=<file>引用<file>作为xsl样式表 XML输出。 如果<file>为1(数字1), 编写默认样式表cloc.xsl(或 cloc-diff.xsl if-diff)。 此开关强制启用--xml。 --用yaml编写结果。
prompt>cloc—显示语言 ABAP(ABAP) ActionScript(作为) Ada(Ada,adb,ads,pad) ADSO/IDSM(广告) 阿格达(阿格达,拉格达) 振幅(例如,道夫,启动) AnsProlog(lp) Ant(build.xml,buildxml) ANTLR语法(g,g4) Apex等级(cls) 顶点触发器(触发器) APL(APL,apla,aplc,aplf,apli,apln,aplo,dyalog,dyapp,mipage) AppleScript(AppleScript) Arduino素描(ino,pde) 方舟(ets) 阿图罗(艺术) ASCIIIDOC(adoc,AsciiDoc) ASP(asa、ashx、ASP、axd) ASP。 NET(asax、ascx、asmx、aspx、master、sitemap、webinfo) AspectJ(aj) 组件(a51,asm,nasm,S,S) 阿童木(Astro) 渐近线(简单) 自动热键(ahk,ahkl) awk(auk,awk,gawk,mawk,nawk) 挡板(建造) BizTalk业务流程(odx) BizTalk管道(btp) 刀片(刀片,刀片.php) Bourne Again Shell(巴什) 伯恩壳牌(sh) BrightScript(brs) 生成器(xml.builder) C(C、cats、ec、idc、pgc) C外壳(csh,tcsh) C#(cs)代码 C#设计器(Designer.cs) C++(C、C++、C++m、cc、ccm、CPP、CPP、cppm、cxx、cxxm、h++、inl、ipp、ixx、pcc、tcc、tpp) C/C++标题(H,H,hh,hpp,hxx) 开罗(开罗) 蛋糕构建脚本(蛋糕) 碳(碳) CCS(CCS) 礼拜堂(chpl) 圆形(Circom) 清洁(dcl,icl) Clojure(引导、cl2、clj、cljs.hl、cljscm、cljx、hic、riemann.config) ClojureC(cljc) ClojureScript(cljs) CMake(CMake,CMake.in,CMakeLists.txt) COBOL(CBL、CBL、ccp、COB、COB、COBOL、cpy) CoCoA 5(c5,cocoa5,coco服务器,cpkg5) 咖啡脚本(_咖啡,蛋糕,cjsx,咖啡,冰镇) 冷聚变(cfm,cfml) ColdFusion CFScript(cfc) 约束语法(cg3,rlx) Containerfile(集装箱文件) 辅酶(v) 晶体(cr) CSON(CSON) CSS(CSS) CSV(CSV) 黄瓜(特色) CUDA(cu,cuh) Cython(像素、像素、像素) D(D) 达夫尼(dfy) DAL(日) 飞镖 德尔福表格(dfm) DenizenScript(dsc) 德鲁(Derw) 小丑(小丑) 饮食(dt) diff(diff,补丁) DITA(DITA) Dockerfile(Dockerfle,Dockerfile) DOORS扩展语言(dxl) DOS批处理(BAT、BAT、BTM、BTM、CMD、CMD) 口水(drl) DTD(DTD) 数据跟踪(d) ECPP(ECPP) EEx(EEx) EJS(电子病历) 长生不老药(前,前) 榆树 嵌入式晶体(ecr) ERB(ERB,ERB) Erlang(app.src、emakefile、erl、hrl、rebar.config、rebar.config.lock、rebar.lock、xrl、yrl) 预期(exp) F#(fsi,fs,fs) F#脚本(fsx) 茴香(fnl) 有限状态语言(fsl,jssm) 鱼壳(鱼) 扁平缓冲器(fbs) 焦点(foxec) 第四(4th,e4,f83,fb,Forth,fpm,fr,frt,ft,fth,rx,fs,f,for) Fortran 77(F,F77,F77,FOR,FTN,FTN,pfo,F,FOR) Fortran 90(F90,F90) Fortran 95(F95,F95) 自由标记模板(ftl) 福塔克语(fut) FXML(FXML) GDScript(gd) Gencat NLS(消息) 格拉德(格拉德,ui) Gleam(闪光) GLSL(comp,fp,frag,frg,fsh,fshader,geo,geom,GLSL,glslv,gshader,tesc,tese,vert,vrx,vsh,vshader) 去(去,去) 戈多资源(tres) 戈多场景(tscn) Godot着色器(gdshader) 梯度(Gradle,Gradle.kts) 格雷斯(gsp) GraphQL(gql、GraphQL、graphqls) Groovy(gant、Groovy、grt、gtpl、gvy、jenkinsfile) 哈姆(哈姆,哈姆污损) 把手(把手,hbs) 海港(hb) 兔子(ha) 哈斯克尔(hs,hsc,lhs) 哈克斯(hx,hxsl) HCL(HCL,游牧,tf,tfvars) HLSL(cg、cginc、fxh、HLSL、hlsli、着色器) 空心C(HC) 胡恩(Hoon) HTML(htm,HTML,HTML.hl,xht) HTML EEx(heex) IDL(dlm、IDL、pro) 伊德里斯(idr) 免疫球蛋白Pro(ipf) 英巴(英巴) INI(buildower.spec、editorconfig、INI、lektorproject、prefs) InstallShield(ism) IPL(IPL) 斋(斋) 珍妮特(珍妮特) Java(Java) JavaScript(_js、bones、cjs、es6、jake、jakefile、js、jsb、jscad、jsfl、jsm、jss、mjs、njs、pac、sjs、ssjs、xsjs和xsjslib) JavaServer面(jsf) JCL(JCL) 金贾模板(j2,金贾,金贾2) JSON(arcconfig、avsc、composer.lock、geojson、gltf、har、htmlhintrc、JSON、JSON-tmlanguage、jsonl、mcmeta、mcmod.info、tern-config、tern-project、tfstate、tfstate.backup、topojson,watchmanconfig、webapp、webmanifest、yyp) JSON5(JSON5) JSP(JSP、jspf) JSX(JSX) 朱莉娅(jl) 杜松子 Jupyter笔记本(ipynb) 克米特(ksc) 光辉壳牌(ksh) 科特林(kt,ktm,kts) kvlang(千伏) 精益(hlean,精益) Lem(莱姆) LESS(减) 法(l,lex) LFE(低频) 链接器脚本(ld) 液体(液体) Lisp(asd,el,Lisp,lsp,cl,jl) 识字人Idris(lidr) LiveLink OScript(脚本) LLVM IR(ll) 徽标(x,xm) Logtalk(lgt,Logtalk) Lua(Lua,nse,p8,pd_Lua,rbxs,wlua) m4(交流,m4) make(am、Gnumakefile、Gnumakefile、Makefile和mk) Mako(Mako,mao) 降价(contents.lr、降价、md、mdown、mdwn、mdx、mkd、mkdn、mkdown、ronn、workbook) 数学(cdf,ma,Mathematica,mt,nbp,wl,wlt,m) MATLAB(米) Maven(pom,pom.xml) 介子(介子构建) 金属(金属) 模块3(i3,ig,m3,mg) 莫约姆(Mojom) 莫霍(莫霍, 🔥) MSBuild脚本(btproj,csproj,MSBuild,vcproj,wdproj,wixproj) 泵(mps,m) 胡子(胡须) MXML(MXML) NAnt脚本(内部版本) NASTRAN DMAP(DMAP) 内默尔(n) 网络徽标(nlogo,nls) Nim(尼姆,尼姆.cfg,敏捷,尼姆罗德,尼姆) 尼克斯(尼克斯) 纽纽卡斯州(njk) 目标C(m) 目标C++(mm) OCaml(eliom,eliomi,ml,ml4,mli,mll,mly) 奥丁(Odin) 开放cl(cl) OpenSCAD(scad) Oracle表单(fmt) Oracle PL/SQL(bod、fnc、prc、spc、trg) Oracle报告(rex) P4(第4页) 帕斯卡(dpr,lpr,p,pas,Pascal) 帕斯卡/木偶(pp) Patran命令语言(pcl,ses) 聚乙二醇(聚乙二醇) peg.js(pegjs) 佩吉(peggy) Perl(ack、al、cpanfile、makefile.pl、Perl、ph、plh、plx、pm、psgi、rexfile、pl、p6) 害虫 PHP(aw、ctp、phakefile、PHP、php3、php4、php5、PHP_cs、PHP_cs.dist、phps、phpt、phtml) PHP/Pascal/Fortran(含) Pig拉丁语(Pig) 损益(pl1) 损益(单位:升,plm) PlantUML(iuml、PlantUML、pu、puml、wsd) 采购订单文件(PO) 小马(小马) PowerBuilder(pbt、sra、srf、srm、srs、sru、srw) PowerShell(ps1、psd1、psm1) 棱镜模式(棱镜) ProGuard(专业) Prolog(P,Prolog,yap,pl,p6,pro) 属性(Properties) 协议缓冲区(原型) PRQL(PRQL) Pug(翡翠,Pug) PureScript(采购) Python(buck、build.bazel、gclient、gyp、gypi、lmi、py、py3、pyde、pyi、pyp、pyt、pyw、sconscript、sconstruct、snakefile、tac、workspace、wscript、wsgi、xpy) QML(qbs,QML) Qt(ui) Qt语言学家(ts) Qt项目(pro) R(expr-dist,R,R,rd,rprofile,rsx) 支架(rkt、rktd、rktl、scrbl) 拉库(下午6点,拉库,拉库莫) Raku/Prolog(第6页、第6页) RAML(冲压) 快速脚本(pyj) 剃刀(cshtml,Razor) 理由ML(re,rei) ReScript(res,resi) reStructuredText(rest、rest.txt、rst、rst.txt) 雷克斯(pprx,Rexx) 环(rform、rh、Ring) 人民币(Rmd) 机器人框架(机器人) Ruby(评估、berksfile、brewfile、builder、builderfile、构建文件、capfile、dangerfile、交付文件、eye、fastfile、gemfile、gemfile.lock、gempec、god、guardfile、irbrc、jarfile,jbuilder,mavenfile、mspec、podfile,podspec、prirrc、puppetfile、rabl、rb、rbuild、rbw、rbx、ru、snapfile、thor、thorfile和vagrantfile、watchr) Ruby HTML(rhtml) 锈蚀(rs,rs.in) 盐堆(sls) SAS(SAS) 萨斯(Sass) Scala(kojo、sbt、Scala) 方案(sc、sch、scm、sld、sps、ss、sls) SCSS(监控系统) 塞德语(sed) 技能(il) 技能++(ils) 切片(冰) 苗条(苗条) 细长(Slint) 小对话(st,cs) 智能(Smarty,tpl) 零食(规则,smk) Softbridge基本版(SBL,SBL) 固体(sol) 斯巴福(sp) 规范e(e) SQL(cql、mysql、psql、SQL、SQL、tab、udf、viw) SQL数据(Data.SQL) SQL存储过程(spc.SQL、spoc.SQL、sproc.SQL和udf.SQL) 松鼠(螺母) 标准ML(fun、sig、sml) 星雀(bazel,bzl) 状态(ado,DO,DO,doh,ihlp,mata,matah,sthlp) 触笔(触笔) 糖SS(sss) 斯韦尔特(斯韦尔特) SVG(SVG,SVG) 斯威夫特(Swift) 开关(i) 表生成(td) Tcl/Tk(itk,Tcl,Tk) TEAL(青色) Teamcenter会议 Teamcenter月 TeX(辅助、bbx、bib、bst、cbx、dtx、ins、lbx、ltx、mkii、mkiv、mkvi、sty、TeX、cls) 文本(Text,txt) 节俭 TITAN项目文件信息(tpd) 钛合金样式表(tss) TLA+(TLA) TNSDL(cii,cin,in1,in2,in3,in4,inf,接口,rou,sdl,sdt,spd,ssc,sst) TOML(桶) tspeg(jspeg,tspeg) TTCN(TTCN、ttcn2、ttcn3、ttcnpp) 小枝 TypeScript(mts、tsx、ts) 打字(典型) 乌姆卡(um) 整体预制件(垫子、预制件) 瓦拉(瓦拉) Vala标题(vapi) 应用程序的VB(VBA,VBA) Velocity模板语言(vm) Verilog-SystemVerilog(sv、svh、v) VHDL(VHD、VHD、VHDL、VHDL、vhf、vhi、vho、vhs、vht、vhw) vim脚本(vim) Visual Basic(BAS、BAS、ctl、dsr、frm、FRX、FRX、VBHTML、VBHTML、vbp、vbw、cls) Visual Basic。 NET(VB、VB、vbproj) Visual Basic脚本(VBS、VBS) Visual Fox Pro(SCA、SCA) Visual Studio解决方案(sln) 视觉力组件(组件) 视觉力页面(第页) Vuejs组件(vue) 维珀(vy) Web服务描述(wsdl) WebAssembly(瓦特,瓦特) WGSL(WGSL) Windows消息文件(mc) Windows模块定义(def) Windows资源文件(rc,rc2) WiX包括(wxi) WiX源(wxs) WiX字符串本地化(wxl) WXML(WXML) WXSS(WXSS) X++(xpo) XAML(XAML) xBase(prg、prw) xBase标头(ch) XHTML(XHTML) XMI(XMI,XMI) XML格式 (adml、admx、ant、app.config、axml、builds、ccproj、ccxml、classpath、clixml、cproject、cscfg、csdef、csl、ct、depproj、ditamap、ditaval、dll.config、dotsettings、filters、fsproj、gmx、grxml、iml、ivy、jelly、jsproj、kml、launch、mdpolicy、mjml、natvis、ndproj、nproj、nuget.config,nuspec、odd、osm、packages.config、pkgproj、plist、proj、proj,project, props、ps1xml、psc1、pt、rdf、resx、rss、scxml、settings.styleecop、sfproj、shproj、srdf、情节提要、sttheme、submire-spipe、targets、tmcommand、tml、tmlanguage、tmpreferences、tmsnippet、tmtheme、urdf、ux、vcxproj、vsixmanifest、vssettings、vstemplate、vxml、web.config、web.debug.config和web.release.config,wsf、x3d、xacro、xif、xliff、XML、, xml、xml.dist、xproj、xspec、xul、zcml) XQuery(xq、xql、xqm、XQuery、xqy) XSD(XSD,XSD) XSLT(XSL、XSL、XSLT、XSLT) Xtend(扩展) yacc(y,yacc) YAML(clang-format,clang-timy,gemrc,glide.lock,mir,reek,rviz,superlime-syntax,syntax,YAML,YAML-tmlanguage,yml,yml.mysql) Z字形(Zig) zsh(zsh)
氯 文件可以是Lisp或OpenCL cls公司 文件可以是Visual Basic、TeX或Apex类 反恐精英 文件可以是C#或Smalltalk d日 文件可以是D或dtrace (f) 文件可以是Fortran 77或Forth fnc公司 文件可以是Oracle PL或SQL 对于 文件可以是Fortran 77或Forth 英尺 文件可以是F#或Forth 股份有限公司 文件可以是PHP或Pascal itk公司 文件可以是Tcl或Tk jl公司 文件可以是Lisp或Julia 点燃 文件可以是PL或M 米 文件可以是MATLAB、Mathematica、Objective-C、MUMPS或Mercury 第6页 文件可以是Perl或Prolog pl公司 文件可以是Perl或Prolog 损益 文件可以是Perl或Prolog 聚丙烯 文件可以是Pascal或Puppet 赞成的意见 文件可以是IDL、Qt Project、Prolog或ProGuard ts秒 文件可以是TypeScript或Qt Linguist 用户界面 文件可以是Qt或Glade v(v) 文件可以是Verilog系统Verilog或Coq
-
如果输入文件是存档文件(例如.tar.gz或.zip文件), 创建一个临时目录并使用 系统调用适当的底层实用程序(tar、bzip2、unzip、, 等),然后将此临时目录添加为输入之一。 (此 在Unix上工作比在Windows上更可靠。) -
使用File::Find递归下降输入目录并使 候选文件名列表。 忽略二进制和零大小的文件。 -
确保候选人列表中的文件具有唯一的内容 (首先通过比较文件大小,然后,对于大小相似的文件, 将文件内容的MD5哈希与Digest::MD5进行比较)。 对于每个 一组相同的文件,根据确定删除除第一个副本以外的所有副本 通过词法排序从集合中选择相同的文件。 已删除的 报告中不包含文件。 ( --跳过-唯一性 转换 禁用唯一性测试并强制所有文件副本 包含在报告中。) 另请参见 --忽略= 切换查看哪个 文件被忽略以及原因。 -
扫描候选文件列表以查找cloc的文件扩展名 与编程语言关联(请参见 --展示灯 和 --显示-文本 选项)。 匹配的文件分类为 包含源 该语言的代码。 打开每个没有扩展名的文件 并读取其第一行,以查看它是否是Unix shell脚本 (任何以#开头的内容!)。 如果是shell脚本,则文件为 按脚本语言分类(如果语言是 识别)。 如果文件没有可识别的扩展名或 不是可识别的脚本语言,则忽略该文件。 -
候选列表中剩余的所有文件现在都应该是源文件 用于已知的编程语言。 对于每个文件: 将整个文件读入内存。 计算行数(=L 起初的 ). 删除空白行,然后再次计数(=L 非空白(_B) ). 循环遍历为此语言定义的注释筛选器。 (用于 例如,C++有两个过滤器:(1)删除以开头的行 可选空白,后跟//和(2)删除之间的文本 /*和*/)将每个筛选器应用于代码以删除注释。 计算剩余行数(=L 代码 ). 保存此语言的计数: 空行=L 起初的 -L(左) 非空白(_B) 注释行=L 非空白(_B) -L(左) 代码 代码行=L 代码
提示>tar zxf sqlite-amalgamation-3.5.6.tar.gz 提示>cd sqlite-3.5.6/ prompt>cloc-strip-comments=nc sqlite.c 1个文本文件。 1个唯一文件。 编写sqlite3.c.nc 0个文件被忽略。 http://cloc.sourceforge.net v 1.03 T=1.0秒(1.0个文件/秒,82895.0行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码标尺第三代等效 ------------------------------------------------------------------------------- 丙15167 26827 50901 x 0.77=39193.77 -------------------------------------------------------------------------------
提示>wc-l sqlite3.c sqlite3.c.nc 82895平方米3.c 50901平方米3.c.nc 总计133796 提示>echo“82895-50901”|bc 31994
提示>gcc-c sqlite3.c 提示>md5sum-sqlite3.o cce5f1a2ea27c7e44b2e1047e2588b49平方米3.o
提示>mv sqlite3.c.nc sqlite3.c 提示>gcc-c sqlite3.c 提示>md5sum-sqlite3.o cce5f1a2ea27c7e44b2e1047e2588b49平方米3.o
--extract-with=“\”c:\Program Files\WinZip\wzunzip\“-e-o>FILE<”
perl-5.8.5.tar.gz文件 皮松-2.4.2.tar.gz
cloc--extract-with='gzip-dc>文件<|tar xf-'perl-5.8.5.tar.gz Python-2.4.2tar.gz
cloc—使用='tar zxf>文件提取<'perl-5.8.5.tar.gz Python-2.4.2.tar.gz
cloc.exe--extract-with=“\”c:\Program Files\WinZip\WinZip32.exe\“-e-o>FILE<.”perl-5.8.5.tar.gz Python-2.4.2.tar.gz
Unix(Unix)> cloc--extract-with=“unzip-d.>文件<”Project.ear DOS> cloc.exe--extract-with=“\”c:\Program Files\WinZip\WinZip32.exe\“-e-o>FILE<.”Project.ear
cloc—差异gcc-4.4.0.tar.bz2 gcc-4.5.0.tar.b2
cloc--diff对齐=align.txt gcc-4.4.0.tar.bz2 gcc-4.5.0.tar.b2
提示> cloc—diff Python-2.7.9.tgz Python-2.7.10.tar.xz 4315个文本文件。 4313个文本文件.s 2173个文件被忽略。 4个错误: 差异错误,超过超时:/tmp/8ToGAnB9Y1/Python-2.7.9/Mac/Modules/qt/_Qtmodule.c 差异错误,超过超时:/tmp/M6ldvsGaoq/Python-2.7.10/Mac/Modules/qt/_Qtmodule.c 差异错误(引用注释?):/tmp/8ToGAnB9Y1/Python-2.7.9/Mac/Modules/qd/qdsupport.py 差异错误(引用注释?):/tmp/M6ldvsGaoq/Python-2.7.10/Mac/Modules/qd/qdsupport.py https://github.com/AlDanial/cloc v 1.65 T=298.59秒(0.0个文件/秒,0.0行/秒) ----------------------------------------------------------------------------- 语言文件空白注释代码 ----------------------------------------------------------------------------- Visual Basic语言 相同的2 0 1 12 已修改0 0 0 添加了0 0 0 已删除0 0 0 制作 相同11 0 340 2952 修改了1 0 0 1 添加了0 0 0 已删除0 0 0 差异 相同10 87 105 已修改0 0 0 添加了0 0 0 已删除0 0 0 CSS公司 相同0 0 19 327 修改了1 0 0 1 添加了0 0 0 已删除0 0 0 目标C 相同7 0 61 635 已修改0 0 0 已添加0 0 0 已删除0 0 0 NAnt脚本 相同2 0 0 30 已修改0 0 0 添加了0 0 0 已删除0 0 0 XML格式 相同3 0 2 72 修改了1 0 0 1 添加了0 0 0 1 已删除0 1 0 0 Windows资源文件 相同3 0 56 206 修改了1 0 0 1 添加了0 0 0 已删除0 0 0 期望 相同6 0 161 565 已修改0 0 0 已添加0 0 0 已删除0 0 0 HTML格式 相同14 0 11 2344 已修改0 0 0 添加了0 0 0 已删除0 0 0 vim脚本 相同10 7 106 已修改0 0 0 已添加0 0 0 已删除0 0 0 C类++ 相同2 0 18 128 已修改0 0 0 添加了0 0 0 已删除0 0 0 Windows模块定义 相同7 0 187 2080 修改2 0 0 0 添加了0 0 0 1 已删除0 1 0 2 序言 相同的1 0 0 24 已修改0 0 0 添加了0 0 0 已删除0 0 0 Java脚本 相同3 0 49 229 已修改0 0 0 添加了0 0 0 已删除0 0 0 装配 相同51 0 6794 12298 已修改0 0 0 添加了0 0 0 已删除0 0 0 Bourne Shell公司 相同41 0 7698 45024 修改了1 0 0 3 添加了0 13 2 64 已删除0 0 0 DOS批处理 相同29 0 107 494 修改1 0 0 9 添加了0 1 0 3 已删除0 0 0 MSBuild脚本 相同77 0 3 38910 已修改0 0 0 添加了0 0 0 已删除0 0 0 蟒蛇 同1947年0 109012 430335 修改192 0 94 950 添加2 323 283 2532 删除2 55 58 646 4米 相同18 0 191 15352 修改了1 0 0 2 添加了1 31 0 205 已删除0 0 0 C类 相同505 0 37439 347837 修改45 0 13 218 添加了0 90 33 795 已删除0 9 2 148 C/C++标题 相同255 0 10361 66635 修改5 0 5 7 添加了0 1 3 300 已删除0 0 0 --------------------------------------------------------------------- 金额: 相同2986 0 172604 966700 修改251 0 112 1193 添加3 459 321 3901 删除2 66 60 796 ---------------------------------------------------------------------
Unix(Unix)> cloc--write-lang-def=my_definitions.txt
Unix(Unix)> cloc--read-lang-def=my_definitions.txt file1 file2目录1。。。
从第1列开始的语言名称。 一条或多条评论 过滤器 从第5列开始。 从第5列开始的一个或多个文件扩展名。 从第5列开始的第三代比例因子。 必须提供此条目 但它的价值并不重要 除非你想把你的语言与假设相比较 第三代编程语言。
C类++ 过滤器调用_regexp_common C++ 过滤器remove_inline//*$ 延长线C 扩展c++ 扩展cc 扩展cpp 扩展cxx 扩展pcc 第三代发电机刻度1.51 线路终止\\$
cloc—输出mariadb-10.1.txt mariadb-server-10.1.zip
Unix(Unix)> 猫mariadb-10.1.txt https://github.com/AlDanial/cloc v 1.65 T=45.36秒(110.5个文件/秒,66411.4行/秒) ----------------------------------------------------------------------------------- 语言文件空白注释代码 ----------------------------------------------------------------------------------- 电话:+1613 225338 290077 983026 C 853 62442 73017 715018号 C/C++标题1327 48300 114577 209394 伯恩壳牌256 10224 10810 61943 波尔147 10342 8305 35562 帕斯卡107 4907 5237 32541 HTML 56 195 6 16489 爪哇文字5 3309 3019 15540 电话:40 30 1599 359 14215 芝加哥190 1919 4097 12206 XML 35 648 56 5210 鲁比59 619 184 4998 木偶10 0 1 3848 制作134 724 360 3631 SQL 23 306 377 3405 Python蟒蛇34 371 122 2545 Bourne Again壳牌27 299 380 1604 Windows模块定义37 27 13 1211 法律4 394 166 991 亚科2 152 64 810 DOS批次19 89 82 700 序言1 9 40 448 机器人框架1 0 0 441 CSS 2 33 155 393号 JSON 5 0 0 359 数据跟踪9 59 179 306 Windows资源文件10 61 89 250 组件2 70 284 237 WiX源1 18 10 155 Visual Basic 6 0 0 88 亚马尔2 4 4 65 PHP 1 11 2 24 技能1 8 15 16 第2 0 0 16页 Windows消息文件1 2 8 6 差异1 1 4 4 丁1 4 11 4 ----------------------------------------------------------------------------------- 金额:5014 372484 512110 2127699 ----------------------------------------------------------------------------------- Unix(Unix)> 猫sqlite-3081101.txt https://github.com/AlDanial/cloc v 1.65 T=1.22秒(3.3个文件/秒,143783.6行/秒) ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 川2 11059 53924 101454 C/C++标题2 211 6630 1546 ------------------------------------------------------------------------------- 金额:4 11270 60554 103000 ------------------------------------------------------------------------------- Unix(Unix)> 猫postgresql-9.4.4.txt https://github.com/AlDanial/cloc v 1.65 T=22.46秒(172.0个文件/秒,96721.6行/秒) ----------------------------------------------------------------------------------- 语言文件空白注释代码 ----------------------------------------------------------------------------------- HTML 1254 3725 0 785991 丙1139 139289 244045 736519 C/C++标题667 12277 32488 57014 SQL 410 13400 8745 51926数据库 雅加达8 3163 2669 28491 伯恩壳牌41 2647 2440 17170 波尔81 1702 1308 9456 法9 792 1631 4285 制造205 1525 1554 4114 m4 12 218 25 1642米 Windows模块定义13 4 17 1152 XSLT 5 76 55 294 DOS批次7 29 30 92 CSS 1 20 7 69 组件3 17 38 69 D 1 14 14 66日 Windows资源文件3 4 0 62 Lisp 1 1 1 16 第1 1 7 15页 蟒蛇1 5 0 13 Bourne Again壳牌1 8 6 10 Windows消息文件1 0 0 5 ----------------------------------------------------------------------------------- 金额:3864 178917 295080 1698471 -----------------------------------------------------------------------------------
Unix(Unix)> cloc--sum-reports--out=数据库mariadb-10.1.txt sqlite-3081101.txt postgresql-9.4.4.txt 编写了databases.lang 写入databases.file
Unix(Unix)> cat数据库.lang https://github.com/AlDanial/cloc 1.65伏 -------------------------------------------------------------------------------- 语言文件空白注释代码 -------------------------------------------------------------------------------- C 1994 212790 370986 1552991 电话:+1613 225338 290077 983026 HTML 1310 3920 6 802480 C/C++标题1996 60788 153695 267954 伯恩壳牌297 12871 13250 79113 SQL 433 13706 9122 55331 波尔228 12044 9613 45018 帕斯卡107 4907 5237 32541 雅加达10 3315 2733 29301 电话:42 1817 384 15857 爪哇文字5 3309 3019 15540 芝加哥190 1919 4097 12206 制造339 2249 1914 7745 法13 1186 1797 5276 XML 35 648 56 5210 鲁比59 619 184 4998 木偶10 0 1 3848 Python巨蟒35 376 122 2558 Windows模块定义50 31 30 2363 Bourne Again壳牌28 307 386 1614 DOS批次26 118 112 792 简体中文3 53 162 462 序言1 9 40 448 机器人框架1 0 0 441 JSON 5 0 0 359 Windows资源文件13 65 89 312 组件5 87 322 306 数据跟踪9 59 179 306 XSLT 5 76 55 294 WiX源1 18 10 155 Visual Basic 6 0 0 88 D 2 18 25 70日 亚马尔2 4 4 65 第3 1 7 31页 PHP 1 11 2 24 技能1 8 15 16 Lisp 1 1 1 16 Windows消息文件2 2 8 11 差异1 1 4 4 -------------------------------------------------------------------------------- 金额:8882 562671 867744 3929170 -------------------------------------------------------------------------------- Unix(Unix)> cat数据库.file ---------------------------------------------------------------------------------- 文件文件空白注释代码 ---------------------------------------------------------------------------------- mariadb-10.1.txt 5014 372484 512110 2127699 postgresql-9.4.4.txt 3864 178917 295080 1698471 sqlite-3081101.txt 4 11270 60554 103000 ---------------------------------------------------------------------------------- 金额:8882 562671 867744 3929170 ----------------------------------------------------------------------------------
cloc—输出perl-5.22.0.txt perl-5.22.0.tar.gz cloc--out python-2.7.10.txt python-2.7.10.tar.xz
Unix系统> cloc—sum-reports—out script_lang perl-5.22.0.txt python-2.7.10.txt文件 编写了script_lang.lang 编写了script_lang.file Unix(Unix)> 猫script_lang.lang https://github.com/AlDanial/cloc 1.65伏 ------------------------------------------------------------------------------- 语言文件空白注释代码 ------------------------------------------------------------------------------- 波尔2892 136396 184362 536445 丙680 75566 71211 531203 蟒蛇2141 89642 109524 434015 C/C++标题408 16433 26938 214800 伯恩壳牌154 11088 14496 87759 MSBuild脚本77 0 3 38910 m4 20 1604 191 15559 组件51 3775 6794 12298 帕斯卡8 458 1603 8592 电话:16 897 828 4939 XML 37 198 2 2484 HTML 14 393 11 2344 电话:+12 338 295 2161 Windows模块定义9 171 187 2081 亚马尔49 20 15 2078 序言12 438 2 1146 JSON 14 1 0 1037标准 yacc 1 85 76 998 DOS批次44 199 148 895 目标-C 7 98 61 635 预计6 104 161 565 Windows消息文件1 102 11 489 CSS 1 98 19 328 Windows资源文件7 55 56 292 爪哇文字3 31 49 229 vim脚本1 36 7 106 差异1 17 87 105 NAnt脚本2 1 0 30 印尼盾1 0 0 24 Visual Basic 2 1 1 12 D 1 5 7 8日 Lisp 2 0 3 4 ------------------------------------------------------------------------------- 金额:6674 338250 417148 1902571 ------------------------------------------------------------------------------- Unix(Unix)> cat脚本长度文件 ------------------------------------------------------------------------------- 文件文件空白注释代码 ------------------------------------------------------------------------------- python-2.7.10.txt 3240 161276 173214 998697 perl-5.22.0.txt 3434 176974 243934 903874 ------------------------------------------------------------------------------- 金额:6674 338250 417148 1902571 -------------------------------------------------------------------------------
Unix(Unix)> cloc--sum reports--report_file=所有数据库.lang script_lang 写下所有内容.lang 写入everything.file Unix(Unix)> 猫的一切.lang https://github.com/AlDanial/cloc 1.65伏 --------------------------------------------------------------------------------- 语言文件空白注释代码 --------------------------------------------------------------------------------- 丙2674 288356 442197 2084194 邮编:+1625 225676 290372 985187 HTML 1324 4313 17 804824 波尔3120 148440 193975 581463 C/C++标题2404 77221 180633 482754 Python公司2176 90018 109646 436573 伯恩壳牌451 23959 27746 166872 SQL 433 13706 9122 55331 帕斯卡尔115 5365 6840 41133 MSBuild脚本77 0 3 38910 电话:62 3421 575 31416 雅加达11 3400 2809 30299 爪哇文字8 3340 3068 15769 制造355 3146 2742 12684 组件56 3862 7116 12604 芝加哥190 1919 4097 12206 XML 72 846 58 7694 法13 1186 1797 5276 鲁比59 619 184 4998 Windows模块定义59 202 217 4444 木偶10 0 1 3848 亚马尔51 24 19 2143 DOS批次70 317 260 1687 Bourne Again壳牌28 307 386 1614 序言13 447 42 1594 JSON 19 1 0 1396标准 CSS 4 151 181 790 目标-C 7 98 61 635 Windows资源文件20 120 145 604 预计6 104 161 565 Windows消息文件3 104 19 500 机器人框架1 0 0 441 数据跟踪9 59 179 306 XSLT 5 76 55 294 WiX源1 18 10 155 差异2 18 91 109 vim脚本1 36 7 106 Visual Basic 8 1 1 100 丁3 23 32 78 第3 1 7 31页 NAnt脚本2 1 0 30 印尼盾1 0 0 24 PHP 1 11 2 24 Lisp 3 1 4 20 技能1 8 15 16 --------------------------------------------------------------------------------- 总数:15556 900921 1284892 5831741 --------------------------------------------------------------------------------- Unix(Unix)> cat everything.file文件 ------------------------------------------------------------------------------- 文件文件空白注释代码 ------------------------------------------------------------------------------- 数据库.lang 8882 562671 867744 3929170 script_lang.lang 6674 338250 417148 1902571 ------------------------------------------------------------------------------- 金额:15556 900921 1284892 5831741 -------------------------------------------------------------------------------
cloc--sql 1--sql-project mariadb-mariadb-server-10.1.zip | sqlite3代码.db
cloc--sql 1--sql-project postgresql--sql-append postgersql-9.4.4.tar.bz2 | sqlite3代码.db cloc--sql 1--sql-project-sqlite--sql-append-sqlite-amalgamation-3081101.zip | sqlite3代码.db cloc--sql 1--sql项目python--sql附加python-2.7.10.tar.xz | sqlite3代码.db cloc--sql 1--sql-project perl--sql-append perl-5.22.0.tar.gz | sqlite3代码.db
prompt>sqlite3 code.db'从t中选择项目、文件、nBlank+nComment+nCode作为nL 其中nL=(从t中选择max(nBlank+nComment+nCode))' sqlite|sqlite-amalgamation-3081101/sqlite3.c|161623
.header打开
.mode列
prompt>sqlite3 code.db'从t中选择项目、文件、nBlank+nComment+nCode作为nL 其中nL=(从t中选择max(nBlank+nComment+nCode))'|/ sqlite_格式 --从~/.sqliterc加载资源 项目文件nL _______ _____________________________________ ______ sqlite-sqlite-amalmation-3081101/sqlite3.c 161623
prompt>sqlite3 code.db'从t中选择项目、文件、nBlank+nComment+nCode作为nL 其中nL=(从t中选择max(nBlank+nComment+nCode))'| sqlite_formatter 项目文件nL _______ _____________________________________ ______ sqlite-sqlite-amalgamation-3081101/sqlite3.c 161623
prompt>sqlite3 code.db'从t中选择项目、文件、最大值(nBlank+nComment+nCode)作为nL 按nL的项目顺序分组;'| sqlite_格式 项目文件nL __________ ________________________________________________________________ ______ python python-2.7.10/Mac/Modules/qt/_Qtmodule.c 28091 postgresql postgressql-9.4.4/src/interfaces/ecpg/preproc/predoc.c 54623 mariadb服务器-10.1/storage/mroonga/vendor/gronga/lib/nfkc.c 80246 perl perl-5.22.0/cpan/Locale-Codes/lib/Locale/Codes/Language_Codes.pm 100747 sqlite-sqlite-amalgamation-3081101/sqlite3.c 161623
prompt>sqlite3 code.db'从t中选择项目,文件,max(nCode)作为nL 按nL desc的项目订单分组;'| sqlite_格式 项目文件nL __________ ________________________________________________________________ ______ perl perl-5.22.0/cpan/Locale-Codes/lib/Locale/Codes/Language_Codes.pm 100735 sqlite-sqlite-amalmation-3081101/sqlite3.c 97469 mariadb服务器-10.1/storage/mroonga/vendor/gronga/lib/nfkc.c 80221 postgresql postgressql-9.4.4/src/interfaces/ecpg/preproc/predoc.c 45297 python python-2.7.10/Mac/Modules/qt/_Qtmodule.c 26705
prompt>sqlite3 code.db'选择项目,文件,nCode,nComment, (100.0*nComment)/(nComment+nCode)作为t的注释比率 其中language=“C”且nCode>300和 comment_ratio<1按comment_ratio排序;'| sqlite_formatter(sqlite_formatter) 项目文件nCode注释注释比率 __________ _______________________________________________________________________________________________ _____ ________ __________________ mariadb server-10.1/storage/mroonga/vendor/gronga/lib/nfkc.c 80221 14 0.0174487443135789 python python-2.7.10/python/graminit.c 2175 1 0.0459558823529412 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_turkish.c 2095 1 0.0477099236641221 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_french.c 1211 1 0.0825082508250 8250825 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_french.c 1201 1 0.0831946755407654 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_hungarian.c 1182 1 0.084530853761623 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_hungarian.c 1178 1 0.0848176420695505 mariadb服务器-10.1/strings/ctype-eucjpms.c 67466 60 0.0888546633889169 postgresql postgresql-9.4.4/src/backend/bullows/libstemmer/stem_UTF_8_english.c 1072 1 0.0931966449207828 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_english.c 1064 1 0.0938967136150235 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_spanish.c 1053 1 0.094876660341556 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_spanish.c 1049 1 0.09523809523809952 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_italian.c 1031 1 0.0968992248062016 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_italian.c 1023 1 0.09765625 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_portuguese.c 981 1 0.10183299389002 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_portuguese.c 975 1 0.102459016393443 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_romanian.c 967 1 0.103305785123967 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_2_romanian.c 961 1 0.103950104 mariadb服务器-10.1/strings/ctype-ujis.c 67177 79 0.117461639110265 postgresql postgresql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_finish.c 720 1 0.13869625520111 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_porter.c 717 1 0.139275766016713 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_finish.c 714 1 0.13986013986014 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_porter.c 711 1 0.140449438202247 postgresql postgresql-9.4.4/src/backend/snowball/libstemer/stem_KOI8_R_russian.c 660 1 0.151285930408472 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_russian.c 654 1 0.152671755725191 python python-2.7.10/Mac/Modules/qt/_Qtmodule.c 26705 42 0.157026956294164 python python-2.7.10/Mac/Modules/icn/_Icnmodule.c 1521 3 0.196850393700787 mariadb服务器-10.1/strings/ctype-extra.c 8282 18 0.216867469879518 postgresql postgressql-9.4.4/src/bin/psql/sql_help.c 3576 8 0.223214285714286 mariadb服务器-10.1/strings/ctype-sjis.c 34006 86 0.252258594391646 python python-2.7.10/python/python-ast.c 6554 17 0.258712524729874 mariadb服务器-10.1/strings/ctype-cp932.c 34609 92 0.265122042592432 perl-perl-5.22.0/keywords.c 2815 8 0.283386468296139 python python-2.7.10/Mac/Modules/menu/Menumodule.c 3263 10 0.305530094714329 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_dutch.c 596 2 0.334448160535117 postgresql postgresql-9.4.4/src/backend/bullow/libstemmer/stem_ISO_8859_1_dutch.c 586 2 0.340136054421769 mariadb服务器-10.1/strings/ctype-gbk.c 10684 38 0.354411490393583 python python-2.7.10/Mac/Modules/qd/_Qdmodule.c 6694 24 0.357249181303959 python python-2.7.10/Mac/Modules/win/_Winmodule.c 3056 11 0.35865667753505 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_german.c 476 2 0.418410041841004 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_german.c 470 2 0.423728813559322 mariadb服务器-10.1/strings/ctype-euc_kr.c 9956 44 0.44 postgresql postgressql-9.4.4/src/backend/utils/fmgrtab.c 4815 23 0.475403059115337 python python-2.7.10/Mac/Modules/ctl/_Ctlmodule.c 5442 28 0.511882998171846 python python-2.7.10/Mac/Modules/ae/_AEmodule.c 1347 7 0.51698670605613 python python-2.7.10/Mac/Modules/app/_Appmodule.c 1712 9 0.52295177222545 mariadb服务器-10.1/strings/cytpe-gb2312.c 6377 35 0.54585152838428 mariadb server-10.1/storage/tokudb/ft-index/third_party/xz-4.999.9beta/src/liblzma/lzma/fastpos_table.c 516 3 0.578034682080925 python python-2.7.10/Mac/Modules/evt/_Evtmodule.c 504 3 0.591715976331361 python python-2.7.10/Modules/expat/xmlrole.c 1256 8 0.632911392405063 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_UTF_8_danish.c 312 2 0.636942675159236 postgresql postgressql-9.4.4/src/backend/snowball/libstemer/stem_ISO_8859_1_danish.c 310 2 0.6410256410256641 python python-2.7.10/Mac/Modules/res/Resmodule.c 1621 12 0.734843845682792 python python-2.7.10/Mac/Modules/drag/Dragmodule.c 1046 8 0.759013282732448 python python-2.7.10/Mac/Modules/list/Listmodule.c 1021 8 0.777453838678329 python python-2.7.10/Mac/Modules/te/TEmodule.c 1198 10 0.827814569536424 python python-2.7.10/Mac/Modules/cg/_CGmodule.c 1190 10 0.83333333333 python python-2.7.10/Modules/clmodule.c 2379 23 0.957535387177352 python python-2.7.10/Mac/Modules/folder/_Foldermodule.c 306 3 0.970873786407767
prompt>sqlite3 code.db'选择项目、文件、来自t的nCode 其中nComment=0和 语言不在(“C/C++标题”、“YAML”、“HTML”)中 按nCode desc限制排序10;'| sqlite_格式 项目文件nCode _______ ____________________________________________________________________ _____ perl perl-5.22.0/cpan/Unicode-Collate/Collate/Locale/ja.pl 1938年 python python-2.7.10/PCbuild/pythoncore.vcproj 1889 python python-2.7.10/PC/VS8.0/pythoncore.vcproj 1889 mariadb服务器-10.1/mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc 1862 perl perl-5.22.0/cpan/Unicode-Collate/Colate/Locale/zh_strk.pl 1589 perl perl-5.22.0/cpan/Unincode-Collate/Conte/Locate/zh_zhu.pl 1563 mariadb服务器-10.1/storage/mroonga/vendor/gronga/configure.ac 1526 perl perl-5.22.0/cpan/Unicode-Collate/Colate/Locale/zh_pin.pl 1505 mariadb服务器-10.1/mysql-test/suite/funcs_1/storedproc/storedproc_02.inc 1465 python python-2.7.10/PC/VS8.0/_bsddb.vcproj 1463
prompt>sqlite3 code.db'从t中选择项目、语言、总和(nCode)作为SumCode 按项目、语言分组 按项目排序,SumCode desc;'| sqlite_格式 项目语言SumCode __________ _________________________ _______ 马里亚德C++983026 马里亚德布C 715018 mariadb C/C++标题209394 mariadb Bourne壳牌61943 马里亚德布·佩尔35562 马里亚德·帕斯卡32541 mariadb HTML 16489 mariadb爪哇文15540 马里亚德m4 14215 马里亚德布·梅克12206 mariadb XML 5210 玛丽亚德布·鲁比4998 马里亚德木偶3848 马里亚德制造3631 mariadb SQL 3405 mariadb Python玛丽亚德布Python2545 mariadb Bourne Again壳牌1604 mariadb Windows模块定义1211 马里亚德布法991 马里亚德布yacc 810 mariadb DOS批处理700 mariadb Prolog玛丽亚德布·普罗罗格448 mariadb机器人框架441 马里亚德CSS 393 mariadb JSON 359 马里亚德布数据竞赛306 mariadb Windows资源文件250 mariadb组件237 mariadb WiX源155 mariadb Visual Basic 88 马里亚德YAML 65 mariadb PHP 24 mariadb技能16 马里亚德赛德16 mariadb Windows消息文件6 马里亚德D 4 马里亚德差异4 perl-perl 536445型 珍珠C 155648 perl C/C++标题147858 珀尔伯恩壳牌42668 佩尔帕斯卡8592 perl XML 2410 珀尔YAML 2078 perl C++2033 1986年perl制造 perl序言1146 perl JSON 1037 perl-yacc 998型 perl Windows消息文件489 perl DOS批次389 perl Windows资源文件85 珍珠D 8 perl Lisp 4 postgresql HTML 785991 后gresql C 736519 postgresql C/C++头57014 postgresql SQL 51926 postgresql yacc 28491号 postgresql Bourne Shell 17170 postgresql Perl 9456 postgresql lex邮政编码4285 postgresql品牌4114 邮政编码m4 1642 postgresql Windows模块定义1152 postgresql XSLT 294 postgresql DOS批次92 postgresql程序集69 postgresql CSS 69 postgresql数据库D 66 postgresql Windows资源文件62 postgresql Lisp 16 postgresql sed 15 postgresql Python 13 postgresql Bourne Again外壳10 postgresql Windows消息文件5 蟒蛇蟒蛇434015 蟒蛇C 375555 python C/C++头66942 python Bourne Shell公司45091 python MSBuild脚本38910 蟒蛇m4 15559 python组件12298 巨蟒制造2953 python HTML 2344 python Windows模块定义2081 蟒蛇目标-C 635 蟒蛇预期565 python DOS批处理506 python CSS 328 python Javascript巨蟒脚本229 python Windows资源文件207 python C++128 python vim脚本106 python差异105 python XML 74 python NAnt脚本30 python序言24 python Visual Basic 12 方晶石C 101454 sqlite C/C++标题1546
cloc--sql 1--sql-project x yaml-cpp-yaml-cbp-0.5.3.tar.gz | sqlite3 counts.db
--文件query_with_totals.sql 选择语言,将(文件)计数为文件, 总和(n空白)为空白, sum(注释)作为注释, sum(nCode)作为代码, sum(n空白)+sum(nComment)+summ(nCode)作为Total 由t组按语言顺序按代码描述;
>cat query_with_totals.sql | sqlite3-头计数.db 语言|文件|空白|注释|代码|总计 C++| 141 | 12786 | 17359 | 60378 | 90523 C/C++标题|110|8566|17420|51502|77488 Bourne Shell | 10 | 6351 | 6779 | 38264 | 51394 m4 | 11 | 2037 | 260 | 17980 | 20277年 Python | 30 | 1613 | 2486 | 4602 | 8701 MSBuild脚本|11|0|0|1711|1711 CMake|7|155|285|606|1046 品牌|5|127|173|464|764 降价|2|30|0|39|69
>cat query_with_totals.sql | sqlite3-头计数.db | sqlite_formatter 语言文件空白注释代码总计 ______________ _____ _____ _______ _____ _____ 电话:+141 12786 17359 60378 90523 C/C++标题110 8566 17420 51502 77488 伯恩壳牌10 6351 6779 38264 51394 m4 11 2037 260 17980 20277 Python 30 1613 2486 4602 8701 MSBuild脚本11 0 0 1711 1711 CMake 7 155 285 606 1046号 制作5 127 173 464 764 降价2 30 0 39 69
>cloc—旁路文件yaml-cpp-yaml-cpg-0.5.3.tar.gz github.com/AlDanial/cloc v 1.81 T=1.14秒(287.9个文件/秒,221854.9行/秒) -------------------------------------------------------------------------------------------------------------------------------------------- 文件空白注释代码 -------------------------------------------------------------------------------------------------------------------------------------------- yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/configure 2580 2264 13691 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/configure(测试/配置)2541 2235 13446 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/fused-src/gtest/gtest.h 1972 4681 13408 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/fused-src/gmock/gmock.h 1585 3397 9216 yaml-cpp-yaml-cpp-0.5.3/test/integration/gen_emitter_test.cpp 999 0 8760 yaml-cpp-yaml-cpp-0.5.3/test/gmock-1.7.0/aclocal.m4 987 100 8712 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/m4/libtool.m4 760 65 7176 yaml-cpp-yaml-cpp-0.5.3/test/gmock-1.7.0/gtest/build-aux/ltmain.sh 959 1533 7169 yaml-cpp-yaml-cpp-0.5.3/test/gmock-1.7.0/fused-src/gmock-gtest-all.cc 1514 3539 6390 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/fused-src/gtest/gtest-all.cc 1312 2896 5384 yaml-cpp-yaml-cpp-0.5.3/test/gmock-1.7.0/gtest/test/gtest_unittest.cc 1226 1091 5098 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/include/gtest/internal/gtest-param-util-generated.h 349 235 4559
--文件按文件与语言.sql 选择“文件”、“语言”、“n空白”作为空白, n注释为注释, n编码为代码 按代码desc从t顺序开始;
>cat by_file_with_language.sql | sqlite3-头计数.db | sqlite_formatter 文件语言空白注释代码 __________________________________________________________________________________________________ ______________ _____ _______ _____ yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/configure Bourne Shell 2580 2264 13691 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/configure伯恩Shell 2541 2235 13446 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/fused-src/gtest/gtest.h C/C++标题1972 4681 13408 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/fused-src/gmock/gmock.h C/C++标题1585 3397 9216 yaml-cpp-cpp-0.5.3/test/integration/gen_emitter_test.cpp C++999 0 8760 yaml-cpp-yaml-cpp-0.5.3/test/gmock-1.70/acrocal.m4 m4 987 100 8712 yaml-cpp-yaml-cpp-0.5.3/test/gmock-1.7.0/gtest/m4/libtool.m4 m4 760 65 7176 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/build-aux/ltmain.sh伯恩壳牌959 1533 7169 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/fused-src/gmock-gtest-all.cc C++1514 3539 6390 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/fused-src/gtest/gtest-all.cc C++1312 2896 5384 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/test/gtest_unittest.cc C++1226 1091 5098 yaml-cpp-yaml-cpd-0.5.3/test/gmock-1.7.0/gtest/include/gtest/internal/gtest-param-util-generated.h C/C++标题349 235 4559
#!/ 垃圾桶/桶 # #这些命令必须位于用户的$PATH中: #氯仿 #方形3 #sqlite_formatter(sqlite_formatter) # 如果测试$#-eq 0; 然后 echo“用法:$0[cloc arguments]” echo“运行cloc以计算额外的代码行数” echo“总行的输出列(代码+注释+空白)。” 出口 菲 DBFILE=`tempfile` cloc--sql 1--sql-project x$@|sqlite3${DBFILE} SQL=“选择语言,将(文件)计数为文件, 总和(n空白)为空白, sum(nComment)作为注释, sum(nCode)作为代码, sum(n空白)+sum(nComment)+summ(nCode)作为Total 由t组按语言顺序按代码描述; " echo${SQL}|sqlite3-头${DBFILE}|sqlite格式化程序 rm${DBFILE}
./total_columns.sh yaml-cpp-haml-cpp-0.5.3.tar.gz
语言文件空白注释代码总计 ______________ _____ _____ _______ _____ _____ 电话:+141 12786 17359 60378 90523 C/C++标题110 8566 17420 51502 77488 伯恩壳牌10 6351 6779 38264 51394 m4 11 2037 260 17980 20277 蟒蛇30 1613 2486 4602 8701 MSBuild脚本11 0 0 1711 1711 CMake 7 155 285 606 1046号 制作5 127 173 464 764 降价2 30 0 39 69
统计网络宿主的特定分支的代码 git存储库并将结果作为.csv电子邮件附件发送: https://github.com/dannyloweatx/checkmarx
git-config—全局core.quotepath关闭
#Linux、NetBSD、FreeBSD、macOS: /home/USERNAME/.config/cloc/options.txt #Windows(窗口) C: \用户\用户名\AppData\cloc\options.txt
#选项.txt --vcs数字电视 v#详细级别1 排除文本svg,html
--列表文件 --排除列表文件 --read-lang-def(读-长-参考) --力-长度-ef --diff-list文件
var paths=globArray(“**/*.js”,{cwd:srcPath});
包含源代码和注释的行被计为代码行。 字符串中的注释标记或 此处的文档 被视为实际的注释标记,而不是字符串文字。 例如,下面几行C代码 printf(“/*”); 对于(i=0;i<100;i++){ a+=i; } printf(“*/”); 看起来像这样: 打印f(“xxxxxxx xxxxxxx公司 xxxxxxx公司 xxxxxxx公司 xxxxxxx“); 哪里 xxxxxxx公司 表示cloc对已注释文本的视图。 因此cloc将这五行计算为两行C代码和三行 注释行(同时包含代码和注释的行被视为代码)。 如果您怀疑您的代码有这样的字符串,请使用开关 --条带式注释 切换到删除 嵌入注释标记。 它的使用将使上面的五行显示为 printf(“”); 对于(i=0;i<100;i++){ a+=i; } printf(“”); 因此返回五行代码的计数。 请参阅 上一节 关于使用的缺点 --条带式注释 . 无法识别嵌入式语言。 例如,一个HTML文件包含 JavaScript将完全作为HTML计算。 Python文档字符串可以用于多种用途。 他们可能会 包含文档, 注释掉代码块,或者它们可以是常规字符串(当 它们出现在赋值的右侧或作为函数参数)。 cloc无法通过上下文推断文档字符串的含义; 默认情况下 cloc将所有文档字符串视为注释。 交换机 --文档字符串作为代码 将所有文档字符串视为代码。 使用读取的语言定义文件 --read-lang-def(读-长-参考) 或 --强制语言定义 必须是纯ASCII文本文件。 例如,cloc处理编译器杂注 #如果 / #结尾 ,作为代码 即使这些代码用于阻止编译源代码行; 阻塞的行仍然会影响代码计数。 在Windows上,cloc将失败 无法cd到。。。 没有此类文件或 位于/File/Find.pm的目录 如果扫描的代码有 文件路径长度超过255个字符。 解决方法是运行cloc 来自Windows Linux子系统(WSL)。 cloc的注释匹配代码使用正则表达式 无法使用正确解释嵌套注释 相同的注释标记(例如 /* /* */ */ ). 嵌入的XML注释 CDATA(CDATA) 块被计算为 注释而不是代码。
与语言关联的文件扩展名。 如果语言有 不依赖文件扩展名,而是使用固定的文件名或 使用`#!` 样式程序调用,解释它们是什么。 如何定义注释的描述。 链接到示例代码。
cloc—版本
您正在运行的操作系统 带有所有选项的cloc命令 您正在计算的代码(公共git repo或zip文件的URL或 tar文件等)
@软件{adanial_cloc, 作者={阿尔伯特·丹尼尔}, 标题={cloc:v1.92}, 月=12月, 年份=2021, publisher={Zenodo}, 版本={v1.92}, doi={10.5281/zenodo.5760077}, url={ https://doi.org/10.5281/zenodo.5760077 } }