선 밖에 선 자유인

Mac OS 에서 sed 로 특정 문자열 삭제 본문

IT/Programming

Mac OS 에서 sed 로 특정 문자열 삭제

Hotman 2017. 3. 22. 13:35

sed로 특정 문자열을 포함한 열을 삭제하는 구문은 아래와 같음

# sed -i '/<패턴>/d' <filename>


그러나 mac 에서는 위와 같이 실행하는 경우 아래와 같이 에러가 발생

sed: 1: <filename> : command a expects \ followed by text



아래와 같이 실행하면 원본을 .original 확장자가 붙은 파일이름으로 변경시키고 파일을 복사하여 해당 문자열을 제거

 

sed -i '.original' '/<pattern>/d' <filename>


Ex) sed -i '.original' '/AAAA/d' file1.txt 

실행 시 원본은 file1.txt.original 로 이름이 변경되며, file1.txt 라는 파일이 하나 복사됨

file1.txt 에서 AAAA가 포함된 라인이 삭제됨



Comments