VISUAL 모드의 VIM 버퍼에서 다음 텍스트를 선택하면
f() {
echo "f";
}
f
그런 다음 실행
:'<,'>w !xclip | !eval "$(xclip -o)"
알겠어요
/bin/bash: eval: line 3: syntax error near unexpected token `('
/bin/bash: eval: line 3: `feval f() {'
첫 번째 명령이 VISUAL 선택 항목을 시스템 클립보드에 복사하고 두 번째 명령이 이를 사용하여 평가하도록 이 두 명령을 올바르게 연결하려면 어떻게 해야 합니까 eval
?
답변1
이 시도:
'<,'>w !xclip | eval "$(xclip -o)"
한 번만 사용해야 하며 !
vim은 해당 명령을 하나의 명령으로 실행합니다.
답변2
:'<,'>!xclip && eval "$(xclip -o)"
내 테스트(Bash 4.3, vim 7.4가 포함된 Ubuntu 16.04 LTS)에서는 완벽하게 작동하고 4줄을 단일 문자 "f"로 변환합니다. &&
로 교체하는 |
것은 가능하지만 권장되지 않습니다.
나는 vim을 사용하여 쉘 명령을 실행하는 것이 일반 쉘에서 실행하는 것과 다르지 않다고 생각하며, 그래서도 안됩니다.