차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
tech:sed [2018/02/22 14:30] – [출력 : p] V_Ltech:sed [2022/12/02 12:52] (현재) – [삭제 : d] 61.74.132.138
줄 4: 줄 4:
  
  
 +=====사용법=====
  
 ==== 주소 지정==== ==== 주소 지정====
줄 17: 줄 17:
 ==== 명령어와 옵션==== ==== 명령어와 옵션====
 === 명령어=== === 명령어===
-|a\| 현재 행에 하나 이상의 새로운 행을 추가한다.| +| a\  | 현재 행에 하나 이상의 새로운 행을 추가한다.                
-|c\| 현재 행의 내용을 새로운 내용으로 바꾼다.| +| c\  | 현재 행의 내용을 새로운 내용으로 바꾼다.                  
-|i\| 현재 행의 위에 삽입한다.| +| i\  | 현재 행의 위에 삽입한다.                           
-|d |행을 삭제한다.| +| d   | 행을 삭제한다.                                 
-|l |출력되지 않는 특수문자를 출력한다.| +| l   | 출력되지 않는 특수문자를 출력한다.                      
-|p |행을 출력한다.| +| p   | 행을 출력한다.                                 
-|n |다음 입력 행을 첫 번째 명령어가 아닌 다음 명령어에서 처리하게 한다.| +| n   | 다음 입력 행을 첫 번째 명령어가 아닌 다음 명령어에서 처리하게 한다.  
-|q |sed를 종료한다.| +| q   | sed를 종료한다.                               
-|r |파일로부터 행을 읽어온다.| +| r   | 파일로부터 행을 읽어온다.                           
-|! |선택된 행을 제외한 나머지 전체 행에 명령어를 적용한다.| +| !   | 선택된 행을 제외한 나머지 전체 행에 명령어를 적용한다.          
-|s |문자열을 치환한다.| +| s   | 문자열을 치환한다.                               
-| /g  한줄에 대상문자가 여러개일 때도 처리하도록 한다.|+| /g  한줄에 대상문자가 여러개일 때도 처리하도록 한다.              |
  
 === 옵션=== === 옵션===
줄 102: 줄 102:
 ====찾기 ==== ====찾기 ====
  
-  +  sed '/love/p' *.txt 
-  sed -n '/love/p' datafile+: 기본 설정에서는 모든 행을 표준 출력으로 내보낸다. 패턴 love가 있는 행을 찾으면 그 행을 한 번 더 출력한다. 
 + 
 +  sed -n '/love/p' *.txt
 : 기본 설정에 의한 p 명령어의 동작을 제한한다. -n 옵션을 사용하면 love 패턴을 포함하는 행들만 출력한다. : 기본 설정에 의한 p 명령어의 동작을 제한한다. -n 옵션을 사용하면 love 패턴을 포함하는 행들만 출력한다.
  
- sed '/love/p' datafile 
-: 기본 설정에서는 모든 행을 표준 출력으로 내보낸다. 패턴 love가 있는 행을 찾으면 그 행을 한 번 더 출력한다. 
  
 ==== 삭제 : d==== ==== 삭제 : d====
 +
 +
 +  sed '/love/d' datafile
 +: love를 포함하는 모든 행을 삭제하고, 나머지 행들을 출력한다.
 +
   sed '3d' datafile   sed '3d' datafile
 : 3번 행을 삭제한다. 다른 행들은 기본적으로 한번 출력된다. : 3번 행을 삭제한다. 다른 행들은 기본적으로 한번 출력된다.
줄 118: 줄 123:
   sed '$d' datafile   sed '$d' datafile
 : 마지막 행을 삭제한다. 삭제된 행 이외의 모든 행들이 출력된다. : 마지막 행을 삭제한다. 삭제된 행 이외의 모든 행들이 출력된다.
- 
-  sed '/love/d' datafile 
-: love를 포함한 모든 행을 삭제하고, 나머지 행들을 출력한다. 
- 
  
 ==== 치환 : s==== ==== 치환 : s====
줄 181: 줄 182:
 다중명령어 처리시 중괄호를 사용하며, 이때 각 명령어의 끝에 세미콜론을 붙인다. 다중명령어 처리시 중괄호를 사용하며, 이때 각 명령어의 끝에 세미콜론을 붙인다.
  
-====다중 파일에서 찾아 바꾸기.====+====다중 파일에서 찾아 바꾸기====
  
  
줄 189: 줄 190:
   abc를 찾아 123 으로 바꾼다.   abc를 찾아 123 으로 바꾼다.
   /g  한줄에 대상문자가 여러개일 때도 처리하도록 한다. (global을 의미)   /g  한줄에 대상문자가 여러개일 때도 처리하도록 한다. (global을 의미)
-    +
   sed -i 's\{{page>틀:\{{page>:틀#\g' *.txt   sed -i 's\{{page>틀:\{{page>:틀#\g' *.txt
 +
 +
 +====파일 목록에서====
 +
 +  xargs sed -i 's/bc01/xy01/g' <file_list.log
 +
 +  xargs sed -i 's\{{tag>\{{tag>물약효과 \g' < list.log
  
 =====참고===== =====참고=====