문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 다음 판 양쪽 다음 판 | ||
linux:sed [2020/09/06 23:19] kwon37xi |
linux:sed [2021/12/14 11:32] kwon37xi [줄 처음/끝에 문자열 넣기] |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== Linux sed ====== | ====== Linux sed ====== | ||
* '' | * '' | ||
+ | * see [[linux: | ||
* [[https:// | * [[https:// | ||
* [[http:// | * [[http:// | ||
줄 8: | 줄 9: | ||
===== 파일의 내용 변경 ===== | ===== 파일의 내용 변경 ===== | ||
- | * '' | + | * '' |
* '' | * '' | ||
* 여러 항목을 한번에 바꾸려면 '' | * 여러 항목을 한번에 바꾸려면 '' | ||
줄 14: | 줄 15: | ||
sed -i.bak -e " | sed -i.bak -e " | ||
</ | </ | ||
+ | |||
+ | ===== 특정 영역에만 변경 적용 ===== | ||
+ | <code sh> | ||
+ | # 1 줄만 변경 | ||
+ | sed '1 s/ | ||
+ | |||
+ | # 2~4 줄만 변경 | ||
+ | sed '2,4 s/ | ||
+ | </ | ||
+ | |||
+ | ===== 끝에 붙은 새줄 기호 제거 ===== | ||
+ | * https:// | ||
+ | <code sh> | ||
+ | # 마지막 새줄만 제거 | ||
+ | cat x | sed -z '$ s/ | ||
+ | |||
+ | # 끝에 있는 여러 새줄 기호 모두 제거(중간은 그대로 둠) | ||
+ | sed -Ez '$ s/ | ||
+ | </ | ||
+ | |||
+ | ===== 줄 처음/ | ||
+ | * [[https:// | ||
+ | |||
+ | <code sh> | ||
+ | # 줄 처음 | ||
+ | sed ' | ||
+ | |||
+ | # 줄 끝 | ||
+ | sed ' | ||
+ | |||
+ | # 마지막 줄의 마지막 쉼표 제거 | ||
+ | sed '$ s/, | ||
+ | |||
+ | # 마지막 줄에 2줄 추가 - $ : 마지막줄, | ||
+ | sed -i -e '$a\ | ||
+ | foo1 bar1\ | ||
+ | foo2 bar2' file.txt | ||
+ | |||
+ | # 혹은 유사하게, | ||
+ | sed -i -e ' | ||
+ | </ | ||
+ | |||
+ | * 클립보드 텍스트의 줄 끝에 모두 쉼표 붙여서 다시 클립보드에 넣기 / [[linux: | ||
+ | <code sh> | ||
+ | xclip -o -sel clip | sed -Ez '$ s/ | ||
+ | | sed ' | ||
+ | | sed '$ s/, | ||
+ | | xclip -i -sel clip | ||
+ | </ | ||
+ | |||
+ | ===== desed ===== | ||
+ | * [[https:// | ||
+ | * `sed` debugging | ||
+ | |||
+ | ===== 참조 ===== | ||
+ | * [[https:// | ||