답변:
bash에 있다고 가정하면 Ctrl+를 사용하십시오 U.
bash를 포함하여 명령 줄을 입력 한 다음 해당 줄을 실행하기를 기다리는 많은 프로그램은 Ctrl+ C를 사용하여 "현재 작업을 중단하고 기본 프롬프트로 돌아갑니다"를 의미합니다.
bash를 포함한 일부 프로그램은 Ctrl+ U( OS X의 터미널에서 명령 지우기 )를 사용하여 "행 시작을 커서까지"(또는 "전체 행 지우기")를 의미합니다.
bash에서 Ctrl+ C와 Ctrl+ 사이의 관찰 가능한 차이점은 U다음 과 같습니다.
때로는 명령 입력을 중지하고 나중에 실행하기 위해 셸 기록에 입력 할 수도 있습니다. 유용한 트릭은 #
줄의 시작 부분에 를 넣고 실행하는 것입니다. 줄은 이제 주석이므로 아무런 작업도 수행하지 않습니다. bash에는 단일 키 바로 가기가 있습니다. Alt+ #.
이 readline
아마라는 키에 바인딩되지 않는 기능 kill-whole-line
커서 만 전에 일부를 죽이는 반대로 전체 라인을 죽일 것이다 ( unix-line-discard
다소 잘못된 이름이며에 바인딩 Ctrl- u).
사용 가능한 모든 키 입력에 바인딩 할 수 있습니다. 내가 좋아하는 ShiftAlt- U가 관련 기능이기 때문에. 이 키 입력은 바인딩 do-lowercase-version
되지 않은 버전이 수행하는 모든 작업 을 수행한다는 의미입니다 (이 경우 upcase-word
). 실제로 두 개의 키가 필요하지 않으므로이 키를 사용하겠습니다.
다음과 같이 바인딩을 작성하여 명령 행에서 시도해 볼 수 있습니다.
bind '"\eU":kill-whole-line'
또는 ~/.inputrc
파일에 다음 줄을 넣어서 지속 시키십시오 .
"\eU":kill-whole-line
을 취소하려면 Ctrl- u또는 ShiftAlt- U(또는 취소 할 수 있습니다 모든 작업)을 눌러 Ctrl- Shift- _(밑줄) 또는 Ctrl- x Ctrl- u(두 개의 키 입력). 또는 키를 눌러 죽인 것을 다시 붙여 넣을 수 있습니다 Ctrl- y해당 텍스트의 여러 사본을 원할 경우 반복 할 수 있습니다.
그런데 커서에서 줄 끝까지 텍스트를 죽이려면 Ctrl- 를 누를 수 있습니다 k. 그래서 그 대신 바인딩 위에서 설명한 일을, 당신은 눌러 전체 라인을 죽일 수 Ctrl- u Ctrl- k. 두 번째 키 스트로크에 의해 강제 종료 된 부분 만 강제 종료 버퍼에 저장되지만 여전히 두 번 복구하기 위해 두 번 실행 취소 할 수 있습니다.