Linux에서 텍스트 편집기를 사용하는 방법을 배워야 할 필요성은 논쟁의 여지가 없습니다. 모든 시스템 관리자와 엔지니어는 매일 구성(일반 텍스트) 파일을 처리하며 대부분의 경우 명령줄 인터페이스(예: 나노, 정력, 또는 이맥스).
하는 동안 나노 아마도 새로운 사용자에게 더 적합할 것입니다. 정력 또는 이맥스 고급 기능으로 인해 경험이 많은 사용자가 선택하는 도구입니다.
그러나 이 텍스트 편집기 중 하나를 사용하는 방법을 배우는 것이 최우선 순위여야 하는 또 다른 이유가 있습니다. CLI 전용 서버에 부딪히거나 GUI 기반 Linux 서버 또는 데스크탑의 데스크탑 관리자 문제에 대해 살펴보고 구성 파일을 검사하고 편집할 수 있는 유일한 리소스는 명령입니다. 선.
이 기사와 2개의 기사로 구성된 다음 시리즈 사이에 다음을 검토할 것입니다. 15가지 팁과 트릭 당신의 향상을 위해 정력 기술. 이 텍스트 편집기에 이미 익숙하다고 가정합니다. 그렇지 않은 경우 더 진행하기 전에 스스로에게 호의를 베풀고 vim에 대해 알아보십시오. 다음을 참조할 수 있습니다. vi/vim을 전체 텍스트 편집기로 사용하는 방법 vim 시작에 대한 매우 자세한 가이드.
2 부: 8가지 흥미로운 'Vi/Vim' 에디터 팁과 요령
vim을 실행한 후 다음을 누릅니다. F1 또는 사용 :NS 입력 전 모드를 눌러 온라인 도움말로 들어갑니다. 특정 섹션이나 주제에 커서를 놓고 키를 누르면 해당 섹션이나 주제로 이동할 수 있습니다. Ctrl+]
(Ctrl 키, 닫는 대괄호).
완료한 후 다음을 누릅니다. Ctrl+t
이전 화면으로 돌아갑니다. 또는 다음을 사용하여 특정 주제 또는 명령을 조회할 수 있습니다. :NS
.
예를 들어,
:h x
에 대한 도움말을 표시합니다. NS(삭제) 명령:
그리고
:h 대체.
에 대한 도움말을 불러올 것입니다. 대리자 명령(이 기사의 마지막 팁).
한 화면보다 큰 파일을 편집하는 경우 다음에서 제공하는 기능에 감사할 것입니다. 점수. vim의 마크를 책갈피로 생각할 수 있습니다. 일단 어딘가에 배치하면 빠르고 쉽게 다시 돌아갈 수 있습니다. 편집 중이라고 가정합니다. 300단어 구성 파일과 어떤 이유로 줄 사이를 반복적으로 전환해야 합니다. 30 그리고 150 예를 들어.
먼저 라인으로 이동 #30 입력하여 :30 입력 전 모드에서 명령 모드로 돌아가서 엄마 (중, 그 다음에 NS)라는 마크를 생성합니다. "NS" 줄을 서서 30.
그런 다음 250행으로 이동합니다( :250 ex 모드에서) 그리고 히트 `아
(백틱, 그럼 NS) 표시로 돌아가기 NS 줄을 서서 30. 소문자와 대문자를 사용하여 vim에서 표시를 식별할 수 있습니다(이제 프로세스를 반복하여 NS 줄을 서서 #250).
다음을 사용하여 마크를 볼 수 있습니다.
: AA를 표시합니다.
보시다시피, 각 마크는 라인뿐만 아니라 파일의 특정 라인/열 위치에 의해 참조됩니다.
쉘 스크립트를 편집하고 이전 개발자가 들여쓰기에 관해서는 다소 형편없었다는 것을 깨달았다고 가정해 보겠습니다. 몇 가지 vim 명령으로 문제를 해결하는 방법을 살펴보겠습니다.
먼저 블록의 시작 부분에 커서를 놓고 다음을 눌러 시각적 블록을 선택합니다. Ctrl+v (Ctrl 키, 그 다음에 V).
그런 다음 .
(점) 명령을 사용하여 들여쓰기를 반복합니다. 선택한 블록은 한 번의 키 입력으로 오른쪽 또는 왼쪽으로 이동합니다.
사용의 또 다른 고전적인 예 점 명령은 일련의 단어를 삭제해야 하는 경우입니다. 삭제하려는 첫 번째 단어에 커서를 놓고 키를 누릅니다. 드와이. 다음 단어를 계속 삭제하려면 .
(반복보다 짧고 쉽습니다. 드와이 여러번).
키보드 레이아웃이 파일에 특수 유니코드 문자를 쉽게 삽입할 수 없거나 당신이 익숙한 것과 다른 언어 설정을 가진 서버 앞에서 당신 자신을, 이 트릭이 들어올 것입니다 능숙한.
이렇게 하려면 Ctrl+v 문자 다음에 삽입 모드에서 유 삽입하려는 문자의 16진수 숫자 코드. 당신은 확인할 수 있습니다 유니코드 차트 특수 문자 및 해당 숫자 코드 목록.
예를 들어,
Ctrl+v 다음에 | 보고 |
u0040 | @ |
u00B5 | μ |
u20AC | € |
외부 명령의 출력을 vim으로 편집 중인 파일에 직접 삽입해야 하는 경우가 있습니다. 예를 들어, 나는 종종 다음과 같은 변수를 생성합니다. 감독 나중에 스크립트에서 사용하기 위해 스크립트가 있는 디렉토리에 대한 절대 경로를 저장하기 위해 내 스크립트에서. 이를 위해 다음을 사용합니다.
:NS! 암호
입력 전 방법. 따라서 현재 작업 디렉토리가 삽입됩니다.
또 다른 예: 스크립트의 어딘가에서 기본 게이트웨이를 사용해야 하는 경우 다음과 같이 vim을 종료하지 않고 현재 파일에 쉽게 삽입할 수 있습니다.
::r ip 경로 표시 | 그렙 기본값 | 컷 -f 3 -d " "
현재 편집 중인 파일에 별도의 파일 내용을 추가해야 하는 경우 구문은 이전 팁과 유사합니다. 느낌표를 생략하면 됩니다.
예를 들어 내용을 복사하려면 /etc/passwd:
:r /etc/passwd.conf
구성 파일을 수정해야 하지만 원래 파일을 "공장 설정" 말하자면.
실화. 한 번은 시험 중에 무작위 데이터가 포함된 큰 텍스트 파일을 열어달라는 요청을 받았습니다. 할당된 작업은 단어가 나타날 때마다 교체하는 것으로 구성되었습니다. 지구 ~와 함께 지구 (예, 나는 여전히 정확한 단어를 기억합니다). 익숙하신 분들을 위해 세드, 벨이 울릴 것입니다. 전 모드, 유형:
:%s/old/new/g.
어디 늙은 검색할 패턴이며 새로운 대체할 문자열입니다.
위에서 설명한 경우에는 다음을 사용했습니다.
:%s/지구/지구/g.
작업을 완료합니다.
대체하기 전에 프롬프트를 표시하고 싶은 경우는 어떻습니까? 쉬운. 그냥 추가 씨 위 명령의 끝에서 다음과 같이
:%s/old/new/gc.
패턴의 발생이 강조 표시되고 새 문자열로 대체할지 여부를 묻는 메시지가 표시됩니다.
:%s/gacanepa/me/gc.
어디
이 기사에서 우리는 몇 가지 검토를 시작했습니다 vim 팁과 트릭 텍스트 편집 기술에 추가할 수 있습니다. 다른 여러 가지를 생각할 수 있으므로 아래 양식을 사용하여 공유해 주세요. 이 vim 시리즈의 다음 기사이자 마지막 기사에서 다루도록 하겠습니다. 여러분의 의견을 기다리겠습니다.