programing

Xcode 프로젝트에 몇 줄의 코드가 있는지 어떻게 알 수 있습니까?

randomtip 2023. 5. 21. 15:10
반응형

Xcode 프로젝트에 몇 줄의 코드가 있는지 어떻게 알 수 있습니까?

Xcode 프로젝트에 포함된 코드 줄 수를 확인할 수 있는 방법이 있습니까?저는 이러한 정보를 경영 측정이나 직원 벤치마킹 목적으로 사용하지 않을 것을 약속합니다.;)

나는 이것이 떠다니는 것을 보고 직접 사용합니다.

find . "(" -name "*.m" -or -name "*.mm" -or -name "*.cpp" -or -name "*.swift" ")" -print0 | xargs -0 wc -l

CLOC를 확인하십시오.

시계는 여러 프로그래밍 언어에서 소스 코드의 빈 줄, 주석 줄 및 물리적 줄을 계산합니다.

(레거시 빌드는 SourceForge에 보관됩니다.)

나는 언급한 것처럼 CLOC를 사용해왔고 사용하기가 꽤 쉽습니다.프로젝트 디렉터리에서 추가하고 실행할 수 있는 PERL 스크립트입니다.

PERL은 이미 Mac OS에 포함되어 있으며 다음과 같은 방법으로 스크립트를 호출하여 작성한 줄 수를 확인할 수 있습니다.

perl cloc-1.56.pl ./YourDirectoryWhereYourSourcesAre

다음은 이러한 명령에서 얻은 출력의 예입니다.

   176 text files.
   176 unique files.                                          
     4 files ignored.

http://cloc.sourceforge.net v 1.56  T=2.0 s (86.0 files/s, 10838.0 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Objective C                     80           3848           1876          11844
C/C++ Header                    92            980           1716           1412
-------------------------------------------------------------------------------
SUM:                           172           4828           3592          13256
-------------------------------------------------------------------------------

Terminal.app을 열고 프로젝트의 루트 디렉터리로 이동한 후 다음 명령을 실행합니다.

Swift의 경우에만 해당:

find . \( -iname \*.swift \) -exec wc -l '{}' \+

Obj-C에만 해당:

find . \( -iname \*.m -o -iname \*.mm -o -iname \*.h \) -exec wc -l '{}' \+

Obj-C + Swift의 경우:

find . \( -iname \*.m -o -iname \*.mm -o -iname \*.h -o -iname \*.swift \) -exec wc -l '{}' \+

Obj-C + Swift + C + C++의 경우:

find . \( -iname \*.m -o -iname \*.mm -o -iname \*.c -o -iname \*.cc -o -iname \*.h -o -iname \*.hh -o -iname \*.hpp -o -iname \*.cpp -o -iname \*.swift \) -exec wc -l '{}' \+

터미널 빠른 팁:
contentls: 목록디리내용터렉내용
directory cd: 디토리변경
완성합니다.
에 "\" 합니다.
한 폴더 에서 코드 수를 을 제안합니다.

터미널에서 프로젝트 디렉터리로 전환하고 다음을 실행합니다.

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

특정 파일 형식만 사용하려면 다음과 같은 방법을 사용하십시오.

find . -type f -name \*.[ch]* -print0 | xargs -0 cat | wc -l
  1. 개방 터미널
  2. 프로젝트 탐색
  3. 프로젝트 내에서 다음 명령을 실행합니다.

    find . -path ./Pods -prune -o -name "*.swift" -print0 ! -name "/Pods" | xargs -0 wc -l
    

    또는:

    find . -path ./Pods -prune -o -name "*[hm]" -print0 ! -name "/Pods" | xargs -0 wc -l
    

(*총 개수에서 포드 파일 개수 제외)

Xcode Statistician을 확인해 보세요. 그것은 정확히 당신이 원하는 것을 합니다.그것은 또한 다른 흥미로운 통계를 제공하기 때문에 때때로 재미로 달리기를 할 가치가 있습니다.

그룹으로 표시되지만 실제 폴더 내부는 표시되지 않습니다.실제 폴더를 사용하지 않을 가능성이 높기 때문에 잘 작동할 것입니다.폴더를 사용하는 경우 각 폴더의 개수를 계산하고 함께 추가하면 됩니다.

참고: 2012년 6월 현재, 이것은 최신 버전의 Xcode에서 제대로 작동하지 않는 것으로 보입니다.

터미널의 프로젝트 디렉터리로 이동하여 다음을 입력하는 경우:

find . "(" -name "*.h" -or -name "*.m" -or -name "*.mm" -or -name "*.hpp" -or -name "*.cpp"  -or  -name "*.c" -or -name "*.cc" -or -name "*.swift" ")" -print0 | xargs -0 wc -l

그러면 프로젝트 내역과 각 파일 및 프로젝트 전체의 줄 합계가 표시됩니다.

Mac에서 CLOC 라이브러리를 구현하기 위한 단계는 다음과 같습니다.

  1. 터미널을 엽니다.
  2. 터미널에 아래 명령을 복사하여 붙여넣어 홈브루를 설치합니다(큰따옴표 포함).

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

메시지가 나타나면 시스템 암호를 입력합니다.

아래와 같은 터미널 화면이 표시됩니다.

홈브루 설치 중

시스템에 너무 많은 권한이 팝업되어 모든 권한을 허용합니다.

모든 것이 잘 되면 아래와 같은 터미널 화면이 보일 것입니다.

홈브루 설치 성공

  1. 이제 아래 명령을 사용하여 CLOC를 설치할 차례입니다.

brew install cloc

  1. 프로젝트 디렉토리로 이동하여 다음 명령 중 하나를 실행합니다.

cloc . --exclude-dir=Pods 파일 으)로 표시됨)

cloc . 파일 드일포파포함

모든 것이 잘 되면 아래와 같이 코드가 표시됩니다.

CLOC 결과

Nozzi의 버전은 제게 맞지 않지만, 이번 버전은:

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

빠르고 쉬운 방법:

정규식 검색을 사용합니다(Navigator 찾기, 찾기 > 정규식 선택).

.\n

Xcode 검색 범위에서 편리하게 사용할 수 있으며 카운트할 줄 유형에 따라 쉽게 사용자 정의할 수 있습니다. ;).

MacPort를 통해 SLOCount를 설치할 수 있습니다.또는 좀 더 대략적으로 wc -l을 사용할 수 있습니다.

xcode에 대해 잘 모르지만 디렉토리 트리 내의 모든 특정 파일에서 줄 수를 세기만 하면 되는 경우 다음 명령을 사용할 수 있습니다.

find .... match of all those files ... -exec wc -l {} +

Joshua Nozi의 답변에 따라 GNU에서 해당 파일의 정규 표현은 다음과 같습니다.

find . "(" -name "*.m" -or -name "*.mm" -or -name "*.cpp" -or -name "*.swift" ")" -exec wc -l {} +

아니 심지어는

find -regex ".*\.\(m\|mm\|cpp\|swift\)$" -exec wc -l {} +

하여 정식을다중하음끝모나일파로 과 일치합니다..m,.mm,.cpp또는.swift이러한 표현식에 대한 자세한 내용은 파일 검색에서 정규식을 사용하는 방법에서 확인할 수 있습니다.

Mac OS 찾기로 작업하는 경우 Motti Shneor가 설명한 것처럼 약간 다른 접근 방식이 필요합니다.

find -E . -regex ".*\.([hmc]|mm|cp+|swift|pch)$" -exec wc -l {} +

두 가지 모두 다음과 같은 형태로 출력됩니다.

234 ./file1
456 ./file2
690 total

그래서 당신은 이것을 이렇게 유지하거나 그냥 파이프로.tail -1 (계속)find ... | tail -1) 합니다 마지막 줄이 총계가 되도록 합니다.

line-counter좋은 대안입니다.CLOC보다 가볍고 다른 명령보다 훨씬 강력하고 사용하기 쉽습니다.

간단한 개요

이것이 당신이 도구를 얻는 방법입니다.

$ pip install line-counter

사용하다linedirectory 와 줄 입니다.

$ line
Search in /Users/Morgan/Documents/Example/
file count: 4
line count: 839

싶으면 자한내용참다오시십조하음을은세▁use오시▁if▁just,십참▁detail를 사용하세요.line -d.

$ line -d
Search in /Users/Morgan/Documents/Example/
Dir A/file C.c                                             72
Dir A/file D.py                                           268
file A.py                                                 467
file B.c                                                   32
file count: 4
line count: 839

이 도구의 가장 좋은 점은 구성 파일과 같은 .gitignore를 추가할 수 있다는 것입니다.'.gitignore'에서 수행하는 작업과 마찬가지로 카운트할 파일의 종류를 선택하거나 무시하는 규칙을 설정할 수 있습니다.네, 이 도구는 제가 얼마나 많은 줄을 더 쉽게 알 수 있도록 고안된 것입니다.

자세한 설명 및 사용 방법은 다음과 같습니다. https://github.com/MorganZhang100/line-counter

저는 이 간단한 도구의 저자입니다.누군가에게 도움이 되길 바랍니다.

언급URL : https://stackoverflow.com/questions/2003534/how-to-find-out-how-many-lines-of-code-there-are-in-an-xcode-project

반응형