sed -i는 원본 텍스트를 복사하여 추가 공간을 차지합니다. 다른 방법이 있나요?

sed -i는 원본 텍스트를 복사하여 추가 공간을 차지합니다. 다른 방법이 있나요?

300GiB 크기의 테이블을 에 백업 back.sql한 다음 에
복사하는 스크립트가 있습니다 bak_copy.sql.
sed -i 's/original/copy/g bak_copy.sql

오늘 저는 sed -i스트림을 교체하는 동안 다른 파일이 생성되기 시작하여
어느 시점에서 스크립트가 back.sql원래 저장 크기를 두 배로 늘리는 것을 발견했습니다.

그렇다면 더 나은 옵션이 있습니까? 안전하고 빠를
까요 ?sed 's/original/copy/g' back.sql > bak_copy.sql

답변1

예.

sed 's/original/copy/g' back.sql > bak_copy.sql- 파일 읽기, 내용 변경, 다른 파일에 쓰기 등이 가능합니다.

sed -i 's/original/copy/g' bak_copy.sql- 파일 읽기, 내용 변경, 임시 파일 쓰기. 완료되면 원본 파일을 임시 파일로 바꿉니다.

관련 정보