cloc
매개변수 가 포함된 도구를 사용해 보았 --strip-comments
더니 모든 파일에서 주석이 재귀적으로 올바르게 제거되었지만 두 가지 문제가 있습니다.
- "그 자리에서" 할 수는 없습니다.
- 생성된 파일은 원래 위치에 관계없이 명령을 실행한 디렉터리에 모두 복사됩니다.
내가 실행한 명령은
find . -name '*.php' | xargs cloc --strip-comments=BAK
파일을 내부 편집하거나 파이프를 통해 원본 파일을 mv
덮어쓰도록 하려면 어떻게 해야 합니까?.BAK
답변1
몇 가지 다른 질문을 살펴보면서 내 문제를 해결하는 작은 스크립트를 찾을 수 있었습니다.
#!/bin/bash
shopt -s globstar
for f in **/*.php; do
cloc --strip-comments=BAK --original-dir "${f%.*}.php"
mv "${f%.*}.php.BAK" "${f%.*}.php"
done
의심할 여지없이 이것이 더욱 최적화될 수 있습니다.