vi 질문

세벌의 이미지

텍스트 파일이 있어요.
그 파일 내용중
msgstr "@@
으로 시작하는 행을 모두
msgstr "."
로 바꾸려고 하면 어떻게 하나요?

예를들어
msgid "this is a test"
msgstr "@@aaa"
msgid "this is a 2nd test"
msgstr "@@bbb bbb"
msgid "this is a 3rd test"
msgstr "@@aaa bbb ccc"
이런 식으로 msgstr "@@ 로 시작하는 행은 그 뒤가 어떻든 일괄적으로
msgstr "."
바꾸려고 합니다.

vi 에서 정규표현식을 어떻게 쓰면 될 것 같긴 한데...

baraboau의 이미지

2개중에 아무거나 하시면 됩니다.

:g/^msgstr\s\+"@@/ s/.*/msgstr "."/g

:%s/^\(msgstr\s\+\)"@@.*/\1"."/g

세벌의 이미지

해봤는데 잘 안 되네요.
msgstr "."
이렇게 되지 않고...에러가...

근데 희한하네요.
위에서 내용을 그대로 복사 붙이니까 되네요.

제가 직접 타이핑할 땐 안 되고 에러가 나던데. 제가 뭘 잘못한건지...