sed를 사용하여 문자열을 지정되지 않은 마지막 문자로 바꾸시겠습니까?

sed를 사용하여 문자열을 지정되지 않은 마지막 문자로 바꾸시겠습니까?

sed(또는 다른 방법)를 사용하여 파일의 문자열을 바꾸고 싶습니다.
이 문자열의 형식은 "prv=x"입니다. 여기서 x는 정수입니다. x를 지정하지 않고 대체할 전체 문자열을 지정하는 방법이 sed에 있습니까?

답변1

예. 각 줄에서 처음 나타나는 문자열만 바꿉니다.

sed -i 's/prv=[0-9][0-9]*/replacement_string/' inputfile

또는:

sed -i 's/prv=[0-9]\{1,\}*/replacement_string/' inputfile 

각 줄에서 여러 번 나타나는 문자열을 바꾸려면 다음을 수행하십시오.

sed -i 's/prv=[0-9][0-9]*/replacement_string/g' inputfile

또는:

sed -i 's/prv=[0-9]\{1,\}*/replacement_string/g' inputfile

ERE 구문(버전에서 지원하는 경우 sed)을 사용하여 각 줄에서 처음 나타나는 문자열만 바꿉니다.

sed -Ei 's/prv=[0-9]+/replacement_string/' inputfile

또는:

sed -Ei 's/prv=[0-9]{1,}/replacement_string/' inputfile

각 줄에서 여러 번 나타나는 문자열을 바꾸려면 다음을 수행하십시오.

sed -Ei 's/prv=[0-9]+/replacement_string/g' inputfile

또는:

sed -Ei 's/prv=[0-9]{1,}/replacement_string/g' inputfile

관련 정보