grep을 사용하여 단어를 바꿀 수 있나요?

grep을 사용하여 단어를 바꿀 수 있나요?

sed를 사용할 수 있다는 것을 알고 있지만 grep을 사용하여 동일한 작업을 수행할 수 있는지 알아내려고 노력 중입니다.

내 전화번호는 36.508인데 36.62로 바꾸고 싶습니다.

grep -v "^36.508" file3.1 | echo "36.62" 

여전히 36.508이 인쇄됩니다. grep을 사용하여 36.508에서 36.62로 변경하는 가장 좋은 옵션은 무엇입니까?

답변1

아니요, 단어를 다음으로 바꿀 수 없습니다 grep. grep은 지정한 표현과 일치하는 줄을 찾아 인쇄합니다(또는 with를 사용하여 -v줄을 인쇄합니다).아니요일치 표현).

일치 항목을 변경하려면 다음과 같은 것이 필요합니다 sed.

sed 's/36\.508/36.62/' file3.1

또는 파일에 저장하려면 다음을 수행하세요.

sed 's/36\.508/36.62/' file3.1 > file3.1.modified

또는 정말로 입력 파일을 수정하고 싶다면(이 점에 주의하는 것이 좋습니다):

sed -i 's/36\.508/36.62/' file3.1

마지막 양식에 정말 주의하고 싶다고 말씀드렸나요?

관련 정보