Bash에서 여러 줄 붙여넣기 방지

Bash에서 여러 줄 붙여넣기 방지

나는 종종 ctrl+c마우스 오른쪽 버튼 클릭 메뉴를 사용하여 일부 GUI 응용 프로그램에서 텍스트를 복사한 다음 터미널 에뮬레이터(터미네이터)에 붙여넣습니다. 때때로 나는 클립보드에 여러 줄이 포함되어 있다는 사실을 잊어버립니다. 이를 bash에 붙여 넣으면 각 줄이 "실행"됩니다.

여러 줄 붙여넣기를 완전히 방지할 수 있는 솔루션이 있나요?

답변1

Bash는 이제 다음을 제공합니다.enable-bracketed-paste옵션:

대괄호 붙여넣기 활성화
"On"으로 설정하면 Readline은 각 문자를 키보드에서 읽은 문자로 처리하는 대신 각 붙여넣기를 단일 문자열로 편집 버퍼에 삽입하는 방식으로 터미널을 구성합니다. 이렇게 하면 붙여넣은 문자가 편집 명령으로 해석되는 것을 방지할 수 있습니다. 기본값은 "끄기"입니다.

따라서 이것을 다음에 추가하십시오 ~/.inputrc:

set enable-bracketed-paste on

답변2

이 답변은 사용자의 질문에 대한 가장 구체적인 답변이 아닙니다.두 번째 답변을 참조하십시오. 더 많은 문제를 해결하기 때문에 여기에 남겨 두겠습니다.일반적인질문.

원본 게시물의 댓글에 따르면 (1) 지원되는 터미널 에뮬레이터가 필요합니다.괄호 안에 붙여넣기(2) 터미널에서 실행되는 모든 항목에 대한 해당 지원 , 즉 vim. 대괄호 붙여넣기를 지원하는 터미널 에뮬레이터(목록은 이 문서의 의견에 따라 업데이트됩니다):bashzsh

  • xterm - 부터? ?
  • gnome-terminal- 부터? ?
  • putty- 0.63부터 시작 (2013-08-06 출시일)

브래킷 모드를 지원하는 애플리케이션:

  • vim
  • zsh

를 위해 bashStéphane Chazelas는쉘 스크립트패턴을 감지하고 적절한 조치를 취합니다.

붙여넣기를 눌렀을 때 실행 중이던 UNIX 프로그램을 모르면 보다 구체적인 답변(줄 잘림 방지)에 답변할 수 없습니다.

클립보드 관리자어쩌면 뭔가가 필요할 수도 있습니다.

관련 정보