计算Xcode项目中的总行数

s3fp2yjn  于 2023-02-20  发布在  其他
关注(0)|答案(5)|浏览(225)

计算Xcode项目中总行数的方法是什么?我可以看到单个文件中的行数,但我需要项目中所有行的总和。

56lgkhnf

56lgkhnf1#

如果你正在使用Homebrew(也是终端的粉丝),一个轻量级的解决方案是命令行程序“Cloc”(计算代码行数),它可以分解项目中使用的语言的输出,并提供其他有用的信息。
Cloc

$ brew install cloc 
$ cd path/to/project/ 
$ cloc .
5w9g7ksd

5w9g7ksd2#

如果你不想为一次使用支付4.99美元,也不想为HomeBrew费心,虽然它会计算代码之间的空行,但你可以这样做:
1.开放终端

  1. cd到您的Xcode项目
    1.在目标项目中执行以下操作:
    find . -name "*.swift" -print0 | xargs -0 wc -l
    如果要排除pod:
find . -path ./Pods -prune -o -name "*.swift" -print0 ! -name "/Pods" | xargs -0 wc -l

如果您的项目具有目标c和swift:

find . -type d \( -path ./Pods -o -path ./Vendor \) -prune -o \( -iname \*.m -o -iname \*.mm -o -iname \*.h -o -iname \*.swift \) -print0 | xargs -0 wc -l
kcugc4gi

kcugc4gi3#

checkout :CLOC
ClOC计算源代码的空行、注解行和物理行。
要使用CLOC(代码行数计数)来计算项目中的行数,请下载CLOC .pl文件并在终端中写入以下行:

perl ./DirectoryWhereClockFileIS/cloc-1.56.pl ./YourDirectoryWhereYourSourcesAre

它将显示如下结果:

hec6srdp

hec6srdp4#

App Store上有一个应用程序叫做Xcode Statistics。(或者类似的东西)。它能做你想做的事情。
不过要提醒一句,项目中的行数与项目的质量或复杂性几乎没有关系。

bqjvbblv

bqjvbblv5#

您可以使用此脚本执行此操作:)

#!/usr/bin/python

"""
    Count number of lines of code in a projects 
    directory.

    Credits to https://github.com/0RaMsY0
"""

import os
import argparse

def count_lines(path: str, code_extension: str) -> int:
    FOLDERS = []
    FILES = []
    PATHS = [path]
    TOTAL_LINES = 0
    STOP_LOOP = False

    while STOP_LOOP != True:
        for i in PATHS:
            for _ in os.listdir(i):
                if _.endswith(f".{code_extension}"):
                    FILES.append(f"{i}/{_}")
                else:
                    if os.path.isdir(f"{i}/{_}"):
                        PATHS.append(f"{i}/{_}")
        
        STOP_LOOP = True
    
    for FILE in FILES:
        TOTAL_LINES += len(open(FILE, "r").readlines())
    
    return TOTAL_LINES


if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("-p", "--path", help="Path to count code numbers")
    parser.add_argument("-ex", "--extension", help="Code extenstion e.g py js ...")
    
    args = parser.parse_args()

    PATH = args.path
    CODE_EXTENSION = args.extension

    TOTAL_LINES = count_lines(PATH, code_extension=CODE_EXTENSION)

    print(TOTAL_LINES)

用法:
你需要传入两个标记,一个是你的项目路径,另一个是源代码的扩展名,例如,它可以是py表示python,js表示javascript等...

python countlines.py -p "/path/to/project" -ex py

警告:不要在扩展名的开头添加."",否则将无法使用

相关问题