bash에 있을 때 Esc, Shift+ K, V, bash를 누르면 $EDITOR
다음과 같은 작업이 시작됩니다 /tmp/bash-fc-186566385
.
왜 그런 겁니까? 이것의 목적은 무엇입니까?
bash 를 실행하고 있다는 점을 언급해야 할 것 같습니다 set -o vi
.
답변1
Shift+ 필요하지 않습니다 k. Esc+를 사용하면 v내장된 vi 편집기를 사용하여 쉘 명령줄 편집을 허용할 수 있기 때문에 작동합니다( set -o vi
++를 사용하여 동일한 효과를 얻을 수 있음). 이는 기록 목록 및 기록 파일을 조작하는 데 유용한 내장 명령을 실행하는 것과 같습니다. 길고 까다롭거나 복잡한 명령을 작성하기 위해 설정한 편집기(그렇지 않으면 쉘의 기본 편집기)를 호출한 다음 편집기를 저장하고 닫은 후 실행합니다. 명령에 대한 자세한 내용은 여기에서 확인할 수 있습니다.Ctrlxefc
$EDITOR
fc
Bash 기록 내장 기능.
답변2
이를 통해 전체 Vi 편집 기능을 갖춘 명령을 작성할 수 있습니다. 몇 가지 명령을 입력하고 저장 후 종료하면 :wq
해당 명령이 실행됩니다.
설명: 설정한 편집기에서 명령을 구성할 수 있으며 $EDITOR
, 저장하고 종료하면 콘텐츠가 실행됩니다. (명확하게 말하자면 이것은 Vi 뿐만이 아닙니다!)
또한, 지적한 바와 같이진정한 회의론자, shift편집기를 불러오는 데 + 조합이 필요하지 않습니다. K간단히 말해서 esc그렇습니다 V.