본문 바로가기

IT's Life/Linux

Linux Vim 기본 작업(파일 열기 및 편집) 완전히 침입자 (그림 있음)


먼저 Vim으로 파일을 여는 방법을 배웁니다.

Vim은 파일을 엽니 다

Vim으로 파일을 여는 것은 다음과 같이 명령 줄 모드에서 자체 작성 파일 /test/vi.test를 여는 것만 큼 간단합니다.

[root @ itxdl ~] # vim /test/vi.test

파일을 열면 Vim이 명령 모드에 있습니다. 이때 파일의 총 줄 수 및 문자 수와 현재 커서 위치를 포함하여 파일의 맨 아래에 파일에 대한 일부 정보가 표시됩니다 insert 명령을 사용하여 입력 모드로 들어가 파일을 수행 할 수 있습니다. 그림과 같이 편집하십시오.

그림 Vim은 파일을 엽니 다

 또한 아래 표에서 열린 파일의 명령 형식을 사용하여 특정 상황에 적합한 열기 방법을 사용하여 효율성을 크게 향상시킬 수 있습니다.


표 파일 열기에 대한 Vim 단축키

Vi가 사용하는 옵션

설명 

 Vim 파일 이름

 새 파일을 열거 나 작성하고 커서를 첫 번째 행의 첫 번째 행에 놓으십시오.

 Vim -r 파일 이름

vim을 마지막으로 열 때 충돌 한 파일 복원 

 Vim -R 파일 이름

지정된 파일을 Vim 편집기에 읽기 전용으로 넣습니다. 

 Vim + 파일 이름

파일을 열고 커서를 헤더의 첫 번째 줄에 놓습니다. 

Vi + n 파일 이름 

파일을 열고 n 번째 줄의 첫 번째 줄에 커서를 놓습니다. 

 Vi + / 패턴 파일 이름

파일을 붙잡고 패턴과 일치하는 첫 번째 위치에 커서를 놓습니다. 

Vi -c 명령 파일 이름 

파일을 편집하기 전에 지정된 명령을 실행하십시오. 


Vim으로 편집

마찬가지로 Vim은 다음과 같은 범주로 나눌 수있는 많은 편집 바로 가기를 제공합니다.

Vim은 텍스트를 삽입

명령 모드에서 편집을위한 입력 모드로 들어가기 위해 I, i, O, o, A, a 및 기타 키를 눌러 다른 키를 사용하여 완료 할 수 있습니다. 표와 같이 커서는 다른 위치에 있습니다.


표 텍스트 삽입

바로 가기 키

기능 설명 

 나는

 이후에 현재 커서 위치에 입력되는 텍스트를 삽입하고 커서 뒤의 텍스트는 그에 따라 오른쪽으로 이동합니다.

 나

이후에 커서가있는 줄의 시작 부분에 입력 된 텍스트를 삽입하십시오. 행의 첫 번째 행은 공백이 아닌 첫 번째 문자로, 커서가 행의 시작 부분으로 이동하여 i 명령을 실행하는 것과 같습니다. 

 o

 커서가있는 줄 아래에 새 줄을 삽입하십시오. 빈 줄의 시작 부분에서 커서가 멈추고 입력 텍스트를 기다립니다.

오 

 커서가있는 줄 위에 새 줄을 삽입하십시오. 빈 줄의 시작 부분에서 커서가 멈추고 입력 텍스트를 기다립니다.

 a

현재 커서 위치 다음에 입력 된 텍스트를 삽입하십시오. 

 A

 커서가있는 행의 끝에 입력 한 텍스트를 삽입하십시오. 이는 커서를 행의 끝으로 이동하고 a 명령을 실행하는 것과 같습니다.


Vim은 텍스트를 찾습니다

표 Vim은 대상 텍스트를 찾습니다.

바로 가기 키

기능 설명 

/ abc 

커서 위치에서 앞으로 abc 문자열 찾기 

 / ^ abc

abc로 시작하는 행 찾기 

 / abc $

abc로 끝나는 줄 찾기 

? abc  

커서에서 기본으로 문자열 abc를 찾으십시오. 

 n

같은 방향으로 마지막 조회 명령을 반복 

 N

마지막 조회 할당을 반대 방향으로 반복 

예를 들어, /etc/passwd.vi 파일에서 문자열 "root"를 찾으려면 그림과 같이 명령을 실행하십시오.

그림 Vim으로 찾기

찾고있는 문자열이 파일에 없으면 그림과 같이 "패턴을 찾을 수 없음"프롬프트가 파일의 맨 아래에 나타납니다.

그림  지정된 문자열을 찾지 못하는 팁


검색 과정에서주의해야 할 것은 검색 할 문자열이 대소 문자를 구분한다는 것입니다 (예 : "shenchao"및 "ShenChao"를 검색하면 결과가 다름)

대소 문자를 무시하려면 ": set ic"명령을 입력하고 다시 조정 한 다음 ": set noic"을 입력하십시오.

문자열에 특수 기호가 나타나면 이스케이프 문자 "\"를 추가해야합니다. 일반적인 특수 기호는 \, *,?, $ 등입니다. 예를 들어, 문자열 "10 $"를 찾기 위해 이러한 문자가 나타나면 명령 모드에서 "/ 10 \ $"를 입력해야합니다.


Vim은 텍스트를 대체합니다

표 Vim 교체 텍스트

바로 가기 키 

기능 설명 

커서 위치에서 문자를 교체하십시오. 

 문자가 커서의 위치에서 바뀌고 입력 내용이 같은 길이의 텍스트 내용을 덮어 쓰고“Esc”를 눌러 종료합니다.

 : s / a1 / a2 / g

현재 커서 줄의 모든 a1을 a2로 바꿉니다. 

 : n1, n2s / a1 / a2 / g

파일의 n1 ~ n2 행에있는 모든 a1을 a2로 바꿉니다. 

 : g / a1 / a2 / g

파일의 모든 a1을 a2로 바꿉니다. 

예를 들어, 파일의 모든 "루트"를 "liudehua"로 바꾸려면 두 가지 입력 명령이 있습니다.

: 1, $ s / root / liudehua / g 

또는 

: % s / root / liudehua / g

위의 명령은 편집 모드에서 작동합니다. 즉, 첫 번째 줄에서 마지막 줄까지 전체 텍스트에서 "root"를 검색 한 다음 "liudehua"로 바꿉니다. 

이전 명령이가되면  :10,20 s/root/liudehua/g10 행에서 20 행까지의 "root"만 바뀝니다.


Vim은 텍스트를 삭제합니다

표 Vim 삭제 텍스트 바로 가기

바로 가기 키

기능 설명 

 x

커서 위치에서 문자를 삭제 

 Dd

커서가있는 줄을 삭제하십시오. 

Ndd 

현재 줄 뒤의 n 줄의 텍스트 삭제 (이 줄 포함) 

dG

파일 끝까지 커서 줄을 삭제하십시오. 

 D

줄 끝까지 커서 위치 삭제 

: a1, a2d 

a1 행에서 a2 행까지의 함수 텍스트 내용 

삭제 된 컨텐츠는 실제로 삭제되지 않으며 클립 보드에 배치됩니다. 커서를 지정된 위치로 이동하고 "p"키를 눌러 방금 삭제 한 내용을 붙여 넣습니다.


Vim 복사 텍스트

표  Vim 복사 텍스트

바로 가기 키 

기능 설명 

클립 보드의 내용을 커서로 복사 

클립 보드의 내용을 커서 앞에 복사 

 예

 커서가있는 줄을 클립 보드에 복사합니다이 명령 앞에 숫자 n을 추가하여 여러 줄을 복사 할 수 있습니다.

 Yw

커서 위치의 단어를 클립 보드에 복사 


Vim의 다른 일반적인 단축키

경우에 따라 두 줄을 연결해야 할 수도 있습니다. 예를 들어 다음 파일에는 두 줄의 텍스트가 있으므로 이제 한 줄로 병합해야합니다 (실제로 두 줄 사이의 줄 바꿈 제거).  명령 모드에서 "J"키를 직접 누를 수 있습니다.

실수로 파일의 내용을 삭제 한 경우 "u"키를 사용하여 방금 실행 한 명령을 취소 할 수 있습니다. 이전 작업을 취소하려면 "u"키를 몇 번 더 누르십시오.


Vim 저장 종료 텍스트

Vim의 저장 및 종료는 편집 모드에서 수행되며 공통 명령은 다음 표에 표시되어 있습니다.

표 Vim 공통 저장 종료 명령

사령부

기능 설명 

 : wq

Vim 편집기를 저장하고 종료하십시오.

 : wq!

Vim 편집기를 저장하고 강제 종료 

 : q

저장하지 않고 Vim 편집기를 종료하십시오. 

 : q!

Vim 편집기를 저장하고 강제 종료하지 마십시오. 

 : w

Vim 편집기를 저장하고 종료하지 마십시오. 

 : w!

텍스트를 강제로 저장 

: w 파일 이름 

파일 이름 파일로 저장 

 x!

텍스트를 저장하고보다 일반적인 vim 명령 인 Vim 편집기를 종료하십시오. 

 ZZ

Vim 편집기를 직접 종료하십시오. 

"w!"및 "wq!"등은 일반적으로 파일에 대한 쓰기 권한이없는 경우 (그림에 표시된 것처럼 읽기 전용으로 표시됨) 파일 또는 루트의 소유자 인 경우에 사용됩니다. 사용자를 시행 할 수 있습니다.

그림  읽기 전용 파일