개요
ed는 텍스트 파일을 한 줄씩 편집하는 데 특화된 강력하지만 간결한 편집기입니다. 대화형 모드 외에도 스크립트에서 비대화형으로 사용될 수 있어 자동화된 텍스트 처리에 적합합니다.
주요 특징
- 라인 지향 편집: 한 번에 한 줄씩 작업
- 스크립트 친화적: 비대화형 사용에 적합
- 매우 가벼움: 최소한의 리소스 사용
- POSIX 표준: 대부분의 유닉스/리눅스 시스템에 기본 탑재
주요 옵션
ed는 명령줄 옵션이 많지 않으며, 대부분의 기능은 편집기 내부 명령으로 수행됩니다.
동작 제어
생성된 명령어:
명령어를 조합해 보세요.
설명:
`ed` 명령어를 실행합니다.
위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.
사용 예시
ed는 대화형으로 사용하거나, 스크립트에서 입력 리디렉션을 통해 사용할 수 있습니다.
새 파일 생성 및 텍스트 추가
ed newfile.txt
a
Hello, ed!
This is a test line.
.
w
q
새 파일을 열고, 텍스트를 추가한 후 저장하고 종료합니다.
기존 파일 열기 및 내용 보기
ed existing_file.txt
1,$p
q
기존 파일을 열고, 모든 줄을 출력한 후 종료합니다.
특정 텍스트 치환 (비대화형)
echo '1,$s/old_text/new_text/g
w
q' | ed -s my_document.txt
파일 내의 'old_text'를 'new_text'로 모두 치환하고 저장합니다. -s 옵션으로 출력을 억제합니다.
파일 끝에 내용 추가 (비대화형)
echo '$a
New line added at the end.
.
w
q' | ed -s my_document.txt
파일의 끝에 새로운 줄을 추가하고 저장합니다.
팁 & 주의사항
ed는 다른 현대적인 편집기와는 사용 방식이 매우 다르므로, 몇 가지 핵심 개념을 이해하는 것이 중요합니다.
ed 사용 핵심 개념
- **명령 모드와 입력 모드**: ed는 기본적으로 명령 모드에 있으며, `a`(append), `i`(insert), `c`(change) 명령으로 입력 모드에 진입합니다. 입력 모드에서 `.`(점)을 단독 줄에 입력하면 다시 명령 모드로 돌아옵니다.
- **주소 지정**: 명령은 특정 줄(예: `1`은 첫째 줄, `$`는 마지막 줄, `.`은 현재 줄) 또는 줄 범위(예: `1,$`는 전체 파일)에 적용될 수 있습니다.
- **저장 및 종료**: `w` 명령으로 변경 사항을 저장하고, `q` 명령으로 편집기를 종료합니다. `wq`와 같은 조합은 지원하지 않습니다. `Q`는 변경 사항을 저장하지 않고 강제 종료합니다.
- **현재 줄 확인**: `.` 명령을 입력하면 현재 줄의 내용을 출력하고, `=` 명령은 현재 줄 번호를 출력합니다.
- **정규식 활용**: `s`(substitute) 명령과 함께 강력한 정규식을 사용하여 텍스트를 찾고 바꿀 수 있습니다.