반응형
부제: 파일을 열지 않고 문자열을 바꾸거나 특정 줄만 뽑기
sed 's/ERROR/ERR/' app.log # 줄마다 첫 매치만 치환
sed 's/ERROR/ERR/g' app.log # 한 줄의 여러 개도 전부 (g)
sed -n '2,5p' app.log # 2~5번째 줄만 출력
$ sed -n '2,4p' app.log
2026-07-08 10:00:02 WARN request id=2 path=/upload status=413
2026-07-08 10:00:03 ERROR request id=3 path=/chat status=500
2026-07-08 10:00:04 INFO request id=4 path=/chat status=200sed는 스트림 편집기다. s/찾을것/바꿀것/로 치환하고, -n '범위p'로 특정 줄만 뽑는다.
기본은 화면으로만 출력하고 원본 파일은 건드리지 않는다.
이렇게도 쓴다
파일을 직접 고친다(-i, 되돌릴 수 없으니 주의).
sed -i 's/localhost/127.0.0.1/g' config.ini
고치기 전에 백업을 남기고 수정한다(-i.bak).
sed -i.bak 's/8080/80/g' nginx.conf
주석 줄(#으로 시작)을 모두 지운다.
sed '/^#/d' config.ini
로그의 특정 줄 범위만 뽑아 본다.
sed -n '100,120p' app.log
빈 줄을 모두 지운다.
sed '/^$/d' file.txt반응형
'명령어 > Linux' 카테고리의 다른 글
| [리눅스] tee 화면 출력 파일 저장 동시에 (0) | 2026.07.09 |
|---|---|
| [리눅스] awk 열 추출 집계 조건 필터 (0) | 2026.07.09 |
| [리눅스] tr 문자 치환 삭제 대소문자 변환 (0) | 2026.07.09 |
| [리눅스] cut 열 필드 잘라내기 구분자 (0) | 2026.07.09 |
| [리눅스] uniq 중복 제거 개수 세기 (0) | 2026.07.09 |