기존 프롬프트 명령줄을 여러 줄로 분할

기존 프롬프트 명령줄을 여러 줄로 분할

\ enter명령줄 끝에 입력하여 bash다른 줄에서 명령을 계속할 수 있다는 것을 알고 있습니다 . 그런데 어떻게 분할할 수 있나요?빠르게이미 완전히 입력된 명령줄이 두 부분으로 나누어져 있습니까?

then예를 들어, 나머지 부분을 잘라서 다시 입력할 필요 없이 이 줄을 먼저 끊을 수 있는 방법은 무엇입니까 ?

$ if true; then ls; fi

답변1

edit-and-execute-command일반적으로 ++에 매핑되는 를 사용하여 Ctrl다음을 수행할 수 있습니다.xe편집기에서 현재 명령을 엽니다.. 이 명령은 편집기를 종료할 때 실행됩니다.

답변2

새로운 팀문자는 Control-J라고도 불리는 LF(Line Feed)입니다. Ctrl+를 누르면 키를 누른 것과 동일하게 J명령이 실행됩니다 . 텍스트 LF 문자를 삽입하려면 + + 를 누르세요 . 명령 + (accept-lineReturnCtrlV CtrlJCtrlVquoted-insert) 문자 그대로 다음 문자를 삽입합니다. 따라서 줄을 분할하려면 \ Ctrl+ 를 입력합니다 V.

이 작업을 자주 수행하는 경우 매크로로 만들 수 있습니다.

bind '"\e\C-j": "\\\C-v\C-j\C-b\C-b"'

답변3

참고 - 이 답변은 vi 및 vim에만 해당됩니다.

set -o vi    # edit commands using vi
VISUAL=/usr/bin/vim

현재 입력 중인 줄을 편집하려면 ESC(입력 vi또는 vim명령 모드) 를 누르고 v또는 를 입력합니다 vi.

모든 vi/vim 편집 명령이 유효하다는 점에 유의하십시오. 예를 들어

  • ESC+ A 현재 입력 라인의 끝에 배치합니다.
  • ESC+ 0 줄의 시작 부분에 커서를 놓습니다.

관련 정보