sed 명령은 "//----"로 시작하는 파일의 첫 번째 줄을 바꿉니다.

sed 명령은 "//----"로 시작하는 파일의 첫 번째 줄을 바꿉니다.

아이디어는 다음과 같습니다.

FILE.txt 파일의 첫 번째 줄이 다음으로 시작하는 경우

//-----------

다음으로 교체

//----------- %TAG

이를 위해 다음 명령을 사용했습니다.

sed -i "1s/.\/\/-----------/& %TAG/" FILE.txt

그러나 그것은 작동하지 않았습니다.

어떤 제안이 있으십니까?

답변1

이미 가까워졌습니다. .특정 문자로 시작하는 내용을 삭제하고 //...

sed -i "1s/\/\/-----------/& %TAG/" FILE.txt

또는 이스케이프를 줄이기 위해 구분 기호를 변경하십시오.

sed -i "1s#//-----------#& %TAG#" FILE.txt

답변2

당신은 가깝습니다. 선행 점은 바람직하지 않은 모든 문자와 일치합니다. 문자열이 줄의 시작 부분에서만 일치하도록 하려면 정규식은 다음으로 시작해야 합니다 ^.

sed -i "1s#^//-----------#& %TAG#" file.txt

a를 명령 구분 기호 #로 사용하면 역인용이 단순화됩니다.s

관련 정보