Linux에서 변수를 어떻게 검색하고 바꿀 수 있나요?

Linux에서 변수를 어떻게 검색하고 바꿀 수 있나요?

다음과 같이 구성된 행이 많은 파일이 많이 있습니다.

what,r-crq,What,What,VAC5700-035080,What
i,pns11,I,I,VAC5700-035090,I
do,vdd,did,did,VAC5700-035100,did

VAC검색 및 교체를 수행하여 4개의 숫자를 저장했다가 다시 삽입하고 숫자 의 후행 부분을 제거하여 이 결과를 만들고 싶습니다 VAC.

what,r-crq,What,What,VAC5700,What
i,pns11,I,I,VAC5700,I
do,vdd,did,did,VAC5700,did

모든 파일에 대해 한 번에 이 작업을 수행할 수 있는 방법이 있습니까(숫자는 VAC다양하므로 변수로 저장해야 함), 바람직하게는 Bash 셸에서 수행할 수 있습니까?

나는 정규식을 사용하여 "Notepad++"에서도 이 작업을 수행할 수 있다고 가정하지만 모든 파일을 일괄 처리할 수 있으므로 쉘 스크립트가 더 바람직하다고 생각합니다.

답변1

다음 명령 을 사용하십시오 sed.

sed -e 's|,VAC\([0-9][0-9][0-9][0-9]\)-[0-9]*,|,VAC\1,|' inFile > outFile

,VAC####-#...#,으로 대체됩니다 ,VAC####,.

관련 정보