sed를 사용하여 한 줄에 몇 개의 일치 항목을 바꾸는 방법은 무엇입니까?sed를 사용하여 한 줄에 몇 개의 일치 항목을 바꾸는 방법
나는 텍스트로 file.log 있습니다
sometext1;/somepath1/somepath_abc123/somepath3/file1.a;/somepath1/somepath_abc123/somepath3/file1.o;/somepath1/somepath_abc123/somepath3/file1.cpp; sometext2;/somepath1/somepath_abc123/somepath3/file2.a;/somepath/somepath_abc123/somepath3/file2.o;/somepath1/somepath_abc123/somepath3/file2.cpp;
을 그리고 각 줄에 somepath1/somepath_abc123/somepath3
을 대체하기 위해 노력하고있어.
sometext1;/mysomepath1/mysomepath2/mysomepath3/file1.cpp; sometext2;/mysomepath1/mysomepath2/mysomepath3/file2.cpp;
당신은 나오지도 수익을 볼 수있는 마지막 일치합니다. 표현과
#!/bin/sh FILE="file.log" OLD="somepath1\/somepath_.*\/somepath3" NEW="mysomepath1\/mysomepath2\/mysomepath3" sed 's|'"$OLD"'|'"$NEW"'|g' $FILE > $FILE.out
무슨 잘못 :
나는 다음 코드를 시도?
그건 sed 정규 표현식이 욕심 때문입니다. – ghostdog74