필자는 현재 칼리 리눅스 터미널에서 centos를 사용중이다.
I am currently using centos in a Kali Linux terminal.
필자의 프로그래밍 환경을 확인해야 한다면
https://information-security-vlog.tistory.com/10 을 참고하면 되겠다.
If you need to check my programming environment,
you can refer to information-security-vlog.tistory.com/10.
프로그래밍을 하기전 Vim 설치와 환경 설정 및 단축키를 먼저 확인하고 가자.
Before programming, let's check the Vim installation, preferences, and shortcuts first.
Vim은 Vi 호환 텍스트 편집기이며 Vi 보다 다양한 기능이 제공되는 편집기이다.
Vim is a Vi-compatible text editor and an editor with more features than Vi.
Vim 의 강점은 자유롭게 편집 환경을 변경하거나, 확장된 정규 표현식 문법, 강력한 문법 강조 기능,
다중 되돌리기, 유니코드를 비롯한 다국어 지원, 문법 검사 등을 쓸 수 있다는 점이다.
Vim's strengths are that you can freely change the editing environment,
use extended regular expression grammars, powerful grammar highlighting, multi-revert,
multi-language support, including Unicode, grammar checking, and more.
gedit 은 그래픽 유저 인터페이스 환경용 프로그램이므로 사용하지 않겠다.
I will not use gedit as it is a program for a graphical user interface environment.
이상 간단한 설명을 마치고 본 포스팅에선 Vim 의 단축키를 먼저 알아보고
다음 포스팅에선 설치 및 설정을 진행해보자.
After completing the above brief description, let's first look at the shortcuts of Vim in this post,
and then install and configure in the next post.
Vim 에는 많은 단축키를 지원해준다.
Vim supports many shortcuts.
이 그림은 간략한 단축키에 대한 그림이고 밑에 구체적으로 설명을 적어주도록 하겠다.
This is a picture of a brief shortcuts and I will write a detailed explanation below.
바로 단축키 설명을 해보도록 하겠다.
I'll explain the shortcuts right away.
삽입/편집 작업을 진행하다가 명령 모드로 변경해야 할 경우 "ESC" 키를 누르면 전환된다.
If you need to change to command mode while inserting/editing, press the "ESC" key to switch.
파일 작업 시 명령어 |
|
Vim 명령어 |
결과 |
:e 파일명 |
새로운 파일을 편집. 커맨드 프롬프트처럼 Tab 키를 통해 파일이름의 자동 완성 기능을 사용 가능. |
:w 파일명 |
파일을 저장. 파일 이름을 지정하지 않는다면 원래 파일 이름으로 저장이 되고 |
:q |
현재 편집 중인 Vim 종료. 파일을 저장하지 않으면 종료되지 않음. |
:q! |
파일의 저장에 상관없이 종료. |
:wq |
파일을 저장한 후 종료. |
:x |
위의 :wq 와 거의 같지만 여기서 파일이 저장된 이후 기록된 사항이 있으면 |
실행 취소 및 다시 실행 명령어이다.
These are the undo and redo commands.
"ESC" 키를 눌러 편집 모드에서 빠져 나온 뒤 명령 모드에서 사용한다.
Press "ESC" key to exit edit mode and use it in command mode.
실행 취소 및 다시 실행 |
|
Vim 명령어 |
결과 |
u |
실행 취소. |
U |
커서가 가리키고 있던 라인에서 했던 모든 실행들을 취소. |
Ctrl + r |
다시 실행. |
다음은 검색 명령어이다.
The following is a search command.
"ESC" 키를 눌러 편집 모드에서 빠져 나온 뒤 명령 모드에서 사용한다.
Press "ESC" key to exit edit mode and use it in command mode.
검색 |
|
Vim 명령어 |
결과 |
/pattern |
"pattern" 단어를 검색. |
n |
다음 문자열을 아래방향으로 검색. |
N |
다음 문자열을 윗방향으로 검색. |
치환 명령어이다.
It is a substitution command.
문자나 문자열을 바꾸는 명령어라고 생각하면 된다.
Think of it as a command to change characters or strings.
마찬가지로 "ESC" 키를 눌러 삽입/편집 모드에서 빠져 나온 뒤 명령 모드에서 사용한다.
Likewise, press "ESC" key to exit insert/edit mode and use it in command mode.
치환 (바꾸기) |
|
Vim 명령어 |
결과 |
:r s/foo /bar /a 명령어 |
foo 를 bar 로 치환. r 은 치환하는 범위를 지정하고 f 는 인자를 지정. |
범위 (r, range) 의 종류 |
|
아무것도 쓰지 않을 때 |
범위를 주지 않을 경우 현재 라인에서 치환. |
숫자를 쓸 때 |
치환할 라인의 숫자를 입력. |
% |
전체 파일의 모든 라인에 대해 치환. |
인자 (a, argument )의 종류 |
|
g |
한 라인의 모든 경우를 치환. 이 인자를 주지 않을 경우 처음 발견되는 것만을 치환. |
i |
검색된 문자들의 대소문자를 무시하고 치환. |
I |
대소문자를 무시하지 않고 치환 |
c |
모든 치환에 대해 확인. 만약 치환할 것이라면 y 를, 치환하지 않을 것이라면 n 을, |
예를 들자면 |
|
:452s/foo /bar / |
452 번째 라인의 첫 번째 foo 를 bar 로 치환. |
:s/foo /bar /g |
현재 라인에 나타나는 모든 foo 를 bar 로 치환. |
:%s/foo /bar /g |
전체 파일의 모든 foo 를 bar 로 치환. |
:%s/foo /bar /gi |
위와 같지만 Foo, FOO, FOo, foO 와 같은 것들도 모두 치환. |
:%s/foo /bar /gc |
위위와 같지만 각 치환에 대해 모두 검사를 수행. |
:%s/foo /bar /c |
파일의 모든 라인에 대해 각 라인의 첫 번째 foo 만 bar 로 치환하며 각 치환에 대해 |
다음은 파일 편집 시 사용하는 단축키이다.
The following are shortcuts used when editing files.
파일 편집 중 이동 |
|
아래의 Vim 명령어는 Visual 모드, 터미널 모드 모두에서 사용 가능. |
|
Vim 명령어 |
결과 |
j or 방향키 ↑ |
커서를 한 칸 위로 이동. |
k or 방향키↓ |
커서를 한 칸 아래로 이동. |
l or 방향키 → |
커서를 한 칸 오른쪽으로 이동. |
h or 방향키 ← |
커서를 한 칸 왼쪽으로 이동. |
e |
단어의 끝으로 이동. |
E |
단어의 끝으로 이동. |
b |
단어의 첫 부분으로 이동. |
B |
단어의 첫 부분으로 이동. |
0 |
문장의 첫 부분으로 이동. |
^ |
공백문자가 아닌 문장의 첫 부분으로 이동. |
$ |
문장의 끝으로 이동. |
H |
화면의 첫 번째 라인으로 이동. |
M |
화면의 중간 라인으로 이동. |
L |
화면의 마지막 라인으로 이동. |
:n |
n 번째 라인으로 이동. 예를 들어 :10 이면 10 번째 줄로 이동. |
텍스트의 삽입 몇 편집 |
|
Vim 명령어 |
결과 |
i |
커서 앞에 입력. |
I |
커서가 가리키는 라인의 앞에 입력. |
a |
커서 뒤에 추가. |
A |
커서가 가리키는 라인의 맨 뒤에 추가. |
o |
커서가 가리키는 라인 아래에 새 라인을 추가. |
O |
커서가 가리키는 라인 위에 새 라인을 추가. |
r |
한 글자를 바꿔 쓴 후 다시 명령모드로 변경. |
R |
삽입모드에 들어가지만 글자를 덧쓰면서 이미 쓰여진 글자를 삭제. |
ESC |
삽입/수정 모드에서 명령 모드로 변경. |
텍스트 지우기 |
|
Vim 명령어 |
결과 |
x |
커서가 가리키는 글자를 삭제. |
X |
커서 앞의 글자를 삭제. |
dd or :d |
현재 커서가 가리키는 라인의 글자를 삭제. |
마지막으로 비주얼 모드이다.
Finally, it is a visual mode.
비주얼 모드는 블록을 지정하여 사용하는 모드이다.
Visual mode is a mode used by designating a block.
비주얼 모드 들어가기 |
|
Vim 명령어 |
결과 |
v |
단어를 블록 지정. 텍스트를 블록 지정하기 위해서 이동키를 사용. |
V |
현재 커서가 가리키는 라인을 블록 지정. |
ESC |
비주얼 모드에서 빠져나와 명령 모드로 변경. |
블록 테스트 편집하기 |
|
아래의 명령어는 비주얼 모드에서 텍스트를 블록 설정한 후 명령 모드로 들어와 사용 가능. |
|
Vim 명령어 |
결과 |
~ |
글자의 대소문자를 변경. 예를 들면 mOvL 은 MoVl 로 변경된다. 비주얼 모드와 |
> (V) |
한 칸 오른쪽으로 이동. |
< (V) |
한 칸 왼쪽으로 이동. |
c (V) |
블록 지정된 텍스트를 변경. |
y (V) |
블록 지정된 텍스트를 복사. |
d (V) |
블록 지정된 텍스트를 잘라내기. |
yy or :y or Y |
커서가 가리키는 라인을 복사. 블록 지정할 필요는 없다. |
dd or :d |
커서가 가리키는 라인을 삭제. 블록 지정할 필요는 없다. |
p |
복사나 잘라내기 했던 텍스트를 붙여넣기. |
P |
커서 앞에 복사나 잘라내기 했던 텍스트를 붙여 넣기. |
'Linux > Linux' 카테고리의 다른 글
Vim 설정 / Vim Settings (0) | 2020.07.13 |
---|