원문 링크 : 리눅스/유닉스 에디터 ‘vi’ (3) – ex 명령어 익히기
ex 명령어 익히기
ex 명령어의 기본형식
:k,l command m – (범위지정) (명령어) (명령이 수행될 위치)
:k,l command m | :1,10 co 50 | 1 줄 부터 10 줄 까지를 50 줄 이후로 복사 |
:34,50 d | 34 줄 부터 50 줄 까지 삭제 | |
:100,150 m 10 | 100 줄 부터 150 줄까지를 10 줄 이후로 옮김 | |
:.,$ d | 현재줄부터 끝까지 지우기 | |
:.,+20 co -4 | 현재줄부터 20줄을, 4줄 위에 복사하기 | |
:-,+ t 0 | 위, 아래로 한줄(총 3줄)씩을, 문서 맨위에 복사하기 | |
:/pattern/ d | pattern 이 들어있는 줄 지우기 | |
:/pattern/ -nd | pattern 이 들어있는 줄로부터 n 번째 윗줄 지우기 | |
:/pattern/ +nd | pattern 이 들어있는 줄로부터 n 번째 아랫줄 지우기 | |
:/p1/, /p2/ d | p1 이 들어있는 줄부터, p2 가 들어있는 줄까지 지우기 | |
:.,/pa/ m 23 | 현재줄부터 pa 이 들어있는 줄까지, 23번줄 이후로 옮기기 | |
g 옵션 붙이기 | :g/pattern | 파일전체에서 마지막으로 pattern 이 쓰여진 줄로 가기 |
:g/pattern/ p | 파일전체에서 pattern 이 있는줄 보여주기 | |
:g/pattern/ nu | 파일전체에서 patterm 이 있는줄을 번호와 함께 보여주기 | |
:60,124 g/pa/ | p 60,124 줄 사이에서 pa 이 들어있는줄 보여주기 | |
저장 및 종료 | :w | 저장하기 |
:q | 종료하기 | |
:wq | 저장하고 종료하기 | |
😡 | 저장하고 종료하기 (:wq 와 동일) | |
:w! | 강제로 저장하기 (read-only 로 열었을경우) | |
:q! | 편집한 내용을 저장하지 않고 종료하기 | |
:w new_filename | new_filename으로 저장하기 | |
:w %.new | 현재파일 이름에 .new 를 붙여서 새로운 파일로 저장 | |
:230,$ w filename | 230 줄부터 끝줄까지 filename으로 저장하기 | |
:.,580 w filename | 현재줄부터 580줄까지 filename으로 저장하기 | |
:1,10 w new_filename | 1줄부터 10줄까지 new_filename으로 저장하기 | |
:340,$ w >>new_file | 340줄부터 끝줄까지 new_file에 추가하기 | |
읽기 | :r[ead] filename | 현재위치에 filename 읽어들이기 |
:r /usr/local /data | 현재위치에 /usr/local/data 읽어들이기 | |
:185 r /usr/ local/data | 185줄 이후에 /usr/local/data 읽어들이기 | |
:$ r /usr/local/data | 맨끝줄 이후에 /usr/local/data 읽어들이기 | |
:0 r /usr/local/data | 맨윗줄에 /usr/local/data 읽어들이기 | |
:/pa/ r /usr/local/data | pa 이 존재하는 줄에 /usr/local/data 읽어들이기 | |
다중편집하기 | vi file1 file2 file3 :args | 편집중인 파일목록 보여주기 |
:n[ext] | 다음 파일로 넘어가기 | |
:prev[ious] | 이전파일로 돌아가기 | |
sc/ESC/g | BX가 있는줄 찾아서 Esc 를 ESC 로 바꾸 | |
:% s/editer/editor/g | 처음줄부터 마지막줄까지, editer 를 editor 로 바꾸기 | |
:g/editer/ s//editor/g | 위와 동일(“s/” 다음에 인자가 없어서 윗줄과 같은효과 |
[펌] 리눅스/유닉스 에디터 ‘vi’ (3) – ex 명령어 익히기