sed
이와 같은 파일과 함께 사용할 때
sed 's/a/o' fruits
터미널에 필요한 출력을 제공하지만 파일의 내용을 변경하지는 않습니다. 위 대체 항목으로 파일을 영구적으로 변경하려면 어떻게 해야 합니까?
답변1
-i
파일을 영구적으로 변경하려면 매개변수를 사용하십시오 .
답변2
일반적으로 그렇게해서는 안됩니다. GNU coreutils 및 일부 다른 버전은 -i
내부 편집을 위한 옵션을 추가하지만 구현이 다양하고 이식성이 없습니다. 파일은 스트림이 아니므로 편집을 sed
피해야 합니다. 옵션은 -i
기본적 sed
으로 심볼릭 링크를 삭제하고 파일을 다시 생성하므로 모든 심볼릭 링크를 끊습니다. 보다 건전한 대안을 위해 ed
또는 를 사용하십시오 .ex
ex -s file << EOF
s/a/o/
w
EOF
답변3
sed의 매뉴얼 페이지에서:
-i[SUFFIX], --in-place[=SUFFIX]
edit files in place (makes backup if extension supplied)