Post

Linux sed

1. sed

텍스트 데이터를 패턴 매칭하여 처리한다. 표준 입력이나 파일에서 텍스트를 입력받아 데이터를 처리한다.

2. 주요 옵션

옵션설명
-f처리할 명령을 저장한 파일을 지정
-i원본 파일에 덮어 씀

3. 사용예제

1) 파일의 내용 일괄 변경

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$ cat sample.txt
one
two
three
four

# o를 1로 변경 
# s/이전문자/변경할문자/g 형식으로 입력
$ sed 's/o/1/g' sample.txt 
1ne
tw1
three
f1ur

# 탭(Tab)을 콤마(,)로 변경하고 출력
$ sed 's/\t/,/g' sample.txt

# 탭(Tab)을 콤마(,)로 변경하고 sample.txt에 덮어 씀
$ sed -i 's/\t/,/g' sample.txt

2) 파일 내용 삭제

1
2
# sample.txt 파일의 마지막 라인을 삭제
$ sed '$d' sample.txt

3) 특정 라인 삭제

1
2
3
4
5
# 15 라인 삭제
$ sed '15d' sample.txt

# 19 라인 삭제
$ sed '19d' sample.txt

4) 특정 라인 추가

1
2
# 18 라인에 aa 추가
$ sed '18 i\aa' sample.txt

[출처 및 참고]

This post is licensed under CC BY 4.0 by the author.