루프가 많은 코드 파일이 여러 개 있습니다. 이제 모든 파일의 모든 루프 횟수를 현재 횟수의 4배로 변경해야 합니다. 동시에 모든 파일에 대해 이를 달성할 수 있는 방법이 있습니까?
루프는 다음과 같습니다:
RUN FOR 300;
카운트(300)는 루프마다 변경됩니다.
답변1
Perl을 사용하여 단일 파일에 나타나는 모든 숫자를 형식으로 4배로 늘릴 수 있습니다. RUN FOR <N>;
여기서 <N>
은 임의의 숫자입니다.
perl -pe 's/(\bRUN FOR )(\d+)(;)/ $1 . 4*$2 . $3 /ge;' codefile
"메타문자" 및 "어설션" 섹션을 찾으세요.Perl 정규식 매뉴얼줄의 시작 부분이나 이와 유사한 것을 일치시켜야 하는 경우.
awk
입력 형식을 더 정확하게 알면 가능할 수도 있습니다.
(그러나 나는 프로그램을 수정하는 이러한 방법이 프로그램 구조 관점에서 볼 때 가장 깔끔한 방법은 아니라고 생각합니다.)