2014-02-22 2 views
2

수동으로 불필요한 부분을 제거했습니다 // -------------------------------- ----- 폴더 내의 모든 C++ 파일에서 개의 주석이 있습니다.파일의 문자열을 정규식으로 바꾸기

이제 "//<unknown number of dashes><line break>"을 쉘 스크립트를 통해 빈 문자열이나 줄 바꿈으로 바꿀 수 있다고 생각했습니다.

나중에 세 줄 연속 나누기를 두 줄 나누기로 바꾸고 싶습니다.

누군가 쉘 스크립트로 어떻게 이것을 수행 할 수 있는지 말해 줄 수 있습니까?

+0

C++ 또는 쉘 스크립트? 문제의 셸 스크립트에 대해 이야기하면서 C++에 태그를 지정합니다. 그것을 분명히하십시오. – herohuyongtao

+0

나는 C++ 파일에서 주석을 제거하는 쉘 명령/스크립트를 의미했습니다. –

답변

1

에만 대시 및 옵션 후행 공백이 포함 된 모든 C++ 스타일의 코멘트를 제거하려면 : 그것은 실행 얻을 나는이 일에 SZG의 명령을 추가

sed 's/ *$//' -i file.cpp 
+0

유용한 주석을 제거합니까? –

+0

죄송합니다. 네, 그렇습니다. 게시물을 즉시 수정하겠습니다. – SzG

0

:

sed 's|//--* *$||' -i file.cpp 

후행 공백을 제거하려면를 재귀 적으로 :

find . -name '*.cxx' | xargs sed 's|// --* *$||' -i 
관련 문제