Minha solução é fazer com que comandos sejam comandos shell e sequenciá-los com &&
ao invés de torná-los comandos de tela e sequenciamento com eval
. Como Manwe apontou, eval
não funciona muito bem porque não espera que um comando termine antes de iniciar o próximo. O comando de tela readbuf
se torna o comando shell screen -X readbuf
.
Então, para o seu mac, eu tentaria o seguinte:
bind ) exec sh -c "pbpaste > /tmp/screen-exchange && screen -X readbuf"
Eu não testei o acima, mas a versão de trabalho para xwindows no meu .screenrc é a seguinte:
bind < exec sh -c "xsel -nbo > /tmp/screen-exchange && screen -X readbuf"