반달가면 이글루에서 백업 - http://bahndal.egloos.com/610117
sed 명령에서 여러개의 문자열을 각각 대체할 경우 -e 옵션을 활용할 수 있는데(이전 게시물을 참고하자. 여기로), 대체 명령을 파일에 저장해서 이용할 수도 있다.
우선 -e 옵션의 예시를 보자.
# 문자열 abc를 123으로, def를 456으로 대체
echo "abc def xyz" | sed -e 's/abc/123/' -e 's/def/456/'
123 456 xyz
위의 작업에서 -e 옵션에 사용할 명령들을 파일에 저장해서 불러올 수 있다. 예를 들어 test.sed 파일에 이 명령들을 저장했다면 아래와 같은 형태가 된다.
# test.sed 파일 내용 확인
cat test.sed
s/abc/123/
s/def/456/
test.sed 파일에 있는 명령어를 적용하려면 sed에서 -f 옵션을 이용하면 되겠다.
# test.sed 파일에 있는 명령을 적용
echo "abc def xyz" | sed -f test.sed
123 456 xyz
대체할 문자열이 많고 같은 명령을 반복적으로 적용해야 하는 상황일 경우에 상당히 편리하다.
728x90
'bash script' 카테고리의 다른 글
[bash: cd] 디렉토리 내용 새로 고침(refresh) (0) | 2023.09.04 |
---|---|
[bash: nl, awk] 결과 출력에 행번호를 같이 표시하기 (0) | 2023.09.04 |
[bash: ((] 연관 배열(associative array)에 저장된 정수 계산 (0) | 2023.08.29 |
[bash: while, if] 복잡한 조건에 따른 개별 작업 이후 공통된 작업이 있는 경우 (0) | 2023.08.29 |
리눅스 bash 스크립트에서 연관 배열(associative array) 사용하기 (0) | 2023.08.23 |