답변:
bash를 사용한다고 가정 : emacs 단축키를 활성화 set -o emacs하면 Emacs를 사용하여 명령 줄을 편집 할 수도 있습니다.
Ctrl대신 의미한다고 가정합니다 Cmd. 또한하지 않고 사용하는 set -o emacs것 같습니다 $EDITOR. 감사! 이것은 완벽 해요.
가장 간단한 해결책은 텍스트 편집기를 버퍼로 사용하여 내용을 다시 확인한 다음 텍스트 편집기에서 터미널로 복사하는 것입니다. 이를 위해 TextEdit을 사용하는 경우 URL이 아닌 링크로 붙여 넣기와 같은 문제가 발생하지 않도록 일반 텍스트 모드 ( 형식 메뉴 → 일반 텍스트 만들기 ; ⇧⌘T) 인지 확인하십시오 .
주목해야 할 또 다른 사항은 Bash가 개행 문자 앞에 오는 모든 항목을 실행하려고 시도하므로 텍스트 블록을 복사하는 경우 마지막 문자 뒤에 선택 항목이 끝나지 않고 선.
당신은 이것을 원합니다 :

이거 말고:

물론 텍스트 내에 줄 바꿈이 포함 된 항목 ( 예 : 여러 단락)을 복사하는 경우 선택 항목을 수동으로 편집해야합니다.
대괄호 붙여 넣기는 터미널이 단순히 입력하는 대신 붙여 넣었 음을 쉘에 알려주는 기능이므로 Enter 키를 누를 때까지 명령을 실행할 수 없습니다.
Terminal.app가이를 지원하지만 모든 터미널이 지원하는 것은 아닙니다.
마찬가지로, 모든 쉘이이를 지원하지는 않습니다. OS X과 함께 제공되는 bash 버전은 괄호 붙여 넣기를 지원하지 않습니다 (작성 당시 v3.2.57).
그러나 zsh 는 괄호 붙여 넣기를 지원합니다.
Zsh는 대부분 bash와 호환되며 (실제로 모호한 기능을 사용하지 않으면 스크립트가 작동 할 수 있음) 여러 가지 방법으로 더 좋습니다 (예 : 여러 줄 명령 편집 기능도 있음)!
이 작은 Bash 스크립트를 어딘가에 넣을 수 있습니다 PATH.
#!/bin/bash
read -p "Are you sure you wish to execute \`$(pbpaste)\`? (Y/n) "
[[ $REPLY =~ ^[Yy]?$ ]] && pbpaste | bash
이러한 내용 /usr/local/pbexecute을 예를 들어 실행 파일로 만들면 pbexecute명령 줄에서 안전하게 실행할 수 있습니다. 그러면 클립 보드의 내용을 실행하기 전에 확인 메시지가 나타납니다.
다른 방법은 셸 내에서 클립 보드의 내용으로 텍스트 편집기를 시작하고 종료시 편집 된 내용을 자동으로 실행하는 것입니다. 예를 들면 다음과 같습니다.
#!/bin/bash
PBTEMP=$(mktemp -t pbtemp)
pbpaste > $PBTEMP
nano -t $PBTEMP
source $PBTEMP
rm $PBTEMP
아래 Preferences -> Profiles -> Basic -> Advanced에서 "캐리지 리턴으로 개행 붙여 넣기"를 선택하십시오. (기본은 한 프로필의 이름입니다. 다른 프로필을 사용하는 경우 해당 프로필을 대신 선택해야합니다.)
에서 일부 쉘 (zsh을하고 나를 위해 bash는 작업, tcsh에서는하지 않습니다)이 그것의 일부가 쉘에 전달되기 전에 붙여 무엇을 당신에게 (Ctrl-C를 통해) 중단 편집 또는를하게됩니다.
환경 설정이 작동하려면 새 터미널 창을 만들어야 할 수도 있습니다.
복잡한 명령을 붙여 넣거나 편집 할 때뿐만 아니라 열로 구분 된 텍스트를 보거나 옵션 키로 끌어서 사각형을 선택하고 복사하기 위해이 기능을 항상 사용합니다.