가끔 웹서버에 접속해서 간단한 코드를 수정할때면 Telnet을 많이 사용합니다.

너무 가끔씩 하다보니 매번 까먹는 VI 명령어..

잘 정리되어 있는 글이 있어 낼름 퍼옵니다.

 

출처 : http://databook.tistory.com/8

출처의 출처 : http://hbesthee.tistory.com/494

 

엑셀파일로 다운 받기 : Unix(Linux)_VI_Commands_20091110.xls  

 

 

 ▲ UNIX의 VI 명령어 정리 
 From. http://hbesthee.tistory.com/494 
 ☆ 삽입 명령  
 명령어   설명 
 a   커서 뒤에 입력 
 A   라인 끝에 입력 
 i   커서 앞에 입력 
 I   라인시작 부분에 입력 
 o   커서 있는 라인 밑에 입력 
 O   커서가 있는 라인 위에 입력 
 ☆ 커서 이동 명령  
 명령어   설명 
 h   왼쪽으로 커서 한 칸 이동 
 H   화면의 처음으로 이동 
 L   오른쪽으로 한 칸 이동 
 L   화면 끝으로 이동 
 e   다음 단어의 마지막으로 이동 
 E   커서를 공백으로 구분된 다음 단어 끝으로 이동 
 b   한 단어 뒤로 
 B   커서를 공백으로 구분된 이전 단어로 이동 
 w   커서를 한 단어 뒤로 
 W   커서를 공백으로 구분된 다음 단어로 이동 
 k   커서를 한 라인 위로 
 j   커서를 한 라인 아래로 이동 
 O   커서를 라인의 시작으로 이동 
 $   커서를 라인의 끝으로 이동 
 Enter   커서를 다음 라인 시작으로 이동 
 -   커서를 전 라인의 시작으로 이동 
 Ctrl + F   다음 화면으로 이동 
 Ctrl + D   화면의 반만 앞으로 이동 
 Ctrl + B   전 화면으로 이동 
 Ctrl + U   화면의 반만 뒤로 이동 
 G   커서를 텍스트 마지막 라인으로 
 숫자G   커서를 숫자 라인만큼 이동 
 M   커서를 화면 중간 라인으로 이동 
    커서를 전 위치로 이동 
 (   문장의 시작으로 이동 
 {   문단의 시작으로 이동 
 )   문장 끝으로 이동하여 다음 단어의 시작으로 커서 이동 
 }   문단 끝으로 이동 
 ☆ 방향키를 이용한 커서 이동 명령  
 명령어   설명 
 <-, Del   왼쪽으로 커서 한 칸 이동 
 PageUp   화면 위로 이동 
 ->, Space   오른쪽으로 한 칸 이동 
 PageDown   화면 아래로 이동 
    윗 줄로 커서 이동 
 Enter   다음 줄 첫 칸으로 이동 
    아래 줄로 커서 이동 
 Esc   다음 줄 첫 칸으로 이동 
 Home   줄 처음 칸으로 이동 
 ☆ 삭제 명령  
 명령어   설명 
 x   커서가 있는 문자 삭제 
 X   커서가 있는 문자 앞에 있는 문자 삭제 
 dw   커서가 있는 단어 삭제 
 db   커서가 앞에 있는 단어 삭제 
 dW   공백으로 구분된 뒷 단어 삭제 
 dB   공백으로 구분된 앞 단어 삭제 
 dd   커서가 있는 라인 삭제 
 D   커서가 있는 라인의 나머지 삭제 
 d)   문장의 나머지 삭제 
 d}   문단의 나머지 삭제 
 dG   파일의 나머지 삭제 
 dH   화면의 시작까지 삭제 
 dL   화면의 나머지 삭제 
 J   커서와 다음 단어의 공백을 모두 삭제 
 ☆ 바꾸기 명령  
 명령어   설명 
 r   커서에 있는 문자 대치 
 R   입력 모드로 한 문자씩 덮어씀 
 s   커서가 있는 문자 삭제 후 입력 모드로 전환 
 S   커서가 있는 줄을 삭제 후 입력 모드로 전환 
 cb   커서가 있는 앞 문자 삭제 후 입력 모드 
 cW   공백으로 구분된 뒷 단어를 삭제 후에 입력 모드 
 cB   공백으로 구분된 앞 단어 삭제 후 입력 모드 
 cc   커서가 있는 라인을 삭제하고 입력 모드 
 C   커서가 있는 라인의 나머지를 삭제하고 입력 모드로 전환 
 cO   커서에서부터 라인의 시작까지 텍스트 바꾸기 
 c   특정 텍스트 바꾸기 
 c)   문장의 나머지 바꾸기 
 c}   문단의 나머지 바꾸기 
 cG   파일의 나머지 바꾸기 
 cm   표시까지 모든 것 바꾸기 
 cL   화면의 나머지 바꾸기 
 ch   화면의 시작까지 바꾸기 
 ☆ 복사  
 명령어   설명 
 yw   커서가 있는 단어를 복사 
 yb   커서가 있는 앞 단어를 복사 
 yW   공백으로 구분된 뒷 단어 복사 
 yB   공백으로 구분된 앞 단어를 복사 
 y   특정한 다음 텍스트 복사 
 yy   커서가 있는 라인을 복사, 커서가 가리키는 곳으로 라인을 이동 
 y)   문자의 나머지 복사 
 y}   문단의 나머지 복사 
 yG   파일의 나머지 복사 
 yH   화면의 시작까지 복사 
 yL   화면의 나머지 복사 
 ☆ 텍스트 이동  
 명령어   설명 
 p   삭제나 복사된 텍스트를 커서가 있는 문자나 라인 뒤에 삽입 
 P   삭제나 복사된 텍스트를 커서가 있는 문자나 라인 앞에 삽입 
 dw p   커서가 있는 단어를 삭제한 후 이를 원하는 곳 커서 뒤로 삽입 
 dw P   커서가 있는 단어를 삭제한 후 이를 변경한 커서가 있는 곳으로 삽입 
 d p   지정한 다음 텍스트로 삭제한 후 커서가 가리키는 곳으로 이동 
 d) P   문장의 나머지로 이동 
 d} p   문단의 나머지로 이동 
 dG P   파일의 나머지로 이동 
 dH P   화면 시작 부분으로 이동 
 dL P   화면의 나머지를 이동 
 ☆ vi 에디터 종료 마치기 명령  
 명령어   설명 
 :q   그대로 종료하기 
 :q!   변경된 내용을 저장하지 않고 강제로 종료하기 
 :wq   변경된 내용을 저장하고 종료하기 
 :x   :wq와 동일한 명령 
 ZZ   :wq와 동일한 명령 
 ☆ 검색  
 명령어   설명 
 /pattern   텍스트에서 앞으로 패턴 검색 
 >pattern   텍스트에서 뒤로 패턴 검색 
 n   앞 또는 뒤로 이전 검색 반복 
 N   반대 방향으로 이전 검색 반복 
 /   전 검색을 앞으로 반복 
 ?   전 검색을 뒤로 반복 
 ☆ 문자열 치환  
 명령어   설명 
 :s/old/new   현재 행의 처음 old를 new로 교체 
 :s/old/new/g   현재 행의 모든 old를 new로 교체 
 :10,20s/old/new/g   10행부터 20행까지 모든 old를 new로 교체 
 :-3,+4s/old/new/g   현재 커서 위치에서 3행 위부터 4행 아래까지 old를 new로 교체 
 :%s/old/new/g   문서 전체에서 old를 new로 교체 
 :%s/old/new/gc   문서 전체에서 old를 new로 확인하며 교체 
 :g/pattern/s/old/new/g   Pattern이 있는 모든 행의 old를 new로 교체 
 :g/pattern/s//new/g   :%s/old/new/g와 동일 
 ☆ 옵션  
 옵션  기능  약어  기본값
 autoindent  들여 쓰기 가능, 탭으로 들여 쓰기 범위 지정  ai  off 
 autoprint  줄이 바뀔 때 현재 줄을 화면상에서 출력  ap  on 
 errobells  명령 에러가 발생시 삑 소리나게 함  ed  off 
 number  줄 번호를 나타나게 함  nu  off 
 report  편집시 메시지를 보낼 편집 변화 크기 지정  report  5
 showmatch  가로 닫기 괄호를 사용할 때 일치하는 가로 열기 괄호를 보여줌  sm  off 
 wam  저장하지 않고 vi 종료할 때 경고 메시지를 뿌려 줌  wam  on 
 ignorecase  검색 패턴에 사용되는 대소문자 구별하지 않음  ic  on 
 tabstopp=n  탭 공백을 n 수만큼 지정  ts=n  8
 wrapmargin=n  텍스트 오른쪽 여백을 n 수만큼 지정  wm=n  0
 ☆ Mark 사용  
 명령어   설명 
 mx   현재 위치를 x 이름의 마크로 저장 
 ``   이전에 마크한 위치로 이동 
 `x   마크한 위치(행, 열)로 이동 
 ‘’   이전에 마크한 줄로 이동 
 ‘x   마크한 줄로 이동 
 ☆ Named Buffer 사용  
 명령어   설명 
 “ayy   현재 줄을 "a 버퍼에 복사 
 “Ayy   기존의 버퍼에 현재 줄을 버퍼에 추가 
 "ap   “a 버퍼에 복사된 데이터를 붙여 넣기 
   ☞‘a’ 부터 ‘z’ 까지 사용가능 
 ☆ 여러 문서 편집 ( vi filename1, filename2 … 로 실행 ; 여러 파일 열기)  
 명령어   설명 
 :n   vi로 open한 여러 파일중 다음 파일로 전환 
 :N   vi로 open한 여러 파일중 이전 파일로 전환 
 :4n   여러 파일중 4개 파일 skip후 파일 Open 
 :args   현재 열린 모든 파일중 현재 편집중인 파일 표시 

profile