Em uma sessão do tmux, estou tentando descobrir se existe uma maneira rápida de enviar algumas saídas de um painel para o painel paralelo.
Por exemplo, se eu estiver no painel esquerdo (digamos 0,0) e quiser enviar a saída do pwd
comando para o painel direito (digamos 0,1). Existe uma maneira rápida de fazer isso.
Peça desculpas antecipadamente se isso tiver uma resposta, mas pesquisei no Google por muito tempo sem obter nada além de tmux send-keys -t right 'some text'
.
Em vez disso, quero exibir a saída no painel adjacente. Existe uma maneira de fazer isso?
Responder1
Quero exibir a saída no painel adjacente
Se você souber o nome do arquivo do terminal conectado ao outro painel (o que tty
é impresso), poderá escrever nele. Exemplo:
pwd >/dev/pts/1
Mas isso sóexibiçõespersonagens lá; não há interação com qualquer programa executado no painel. Você usou a palavra "display", mas não tenho certeza se é isso que você deseja. A solução também funciona sem o tmux.
Se você quiser enviar a saída para o stdin de algum comando que está prestes a invocar em outro painel, use um pipe nomeado:
mkfifo foo
pwd >foo
Agora vá para outro shell (outro painel) e leia foo
:
<foo whatever
Isso também não depende do tmux.
Se você quiser colar a saída em outro painel (por exemplo, para torná-la um fragmento de um novo comando em um shell):
- Invoque
pwd
normalmente no painel de origem. - Entre no modo de cópia e copie a saída. Com suporte para mouse basta segurar o botão esquerdo do mouse e arrastar. Depois de soltar o botão, o texto selecionado é armazenado automaticamente em um buffer.
- Para o painel de destino.
- Cole o texto armazenado com
paste-buffer
( prefix]por padrão).