En una sesión de tmux, intento averiguar si existe una forma rápida de enviar algunas salidas desde un panel al panel paralelo.
Por ejemplo, si estoy en el panel izquierdo (digamos 0.0) y quiero enviar el resultado del pwd
comando al panel derecho (digamos 0.1). ¿Existe una manera rápida de hacer esto?
Pido disculpas de antemano si esto tiene una respuesta, pero busqué en Google durante demasiado tiempo sin obtener nada más tmux send-keys -t right 'some text'
.
En lugar de eso, quiero mostrar el resultado en el panel adyacente, ¿hay alguna manera de hacerlo?
Respuesta1
Quiero mostrar el resultado en el panel adyacente
Si conoce el nombre del archivo del terminal conectado al otro panel (lo que tty
se imprime), puede escribir en él. Ejemplo:
pwd >/dev/pts/1
Pero esto sólomuestrapersonajes allí; no hay interacción con ningún programa que se ejecute en el panel. Usaste la palabra "mostrar", pero no estoy seguro de que sea lo que quieres. La solución también funciona sin tmux.
Si desea enviar la salida a la entrada estándar de algún comando que está a punto de invocar en otro panel, utilice una canalización con nombre:
mkfifo foo
pwd >foo
Ahora vaya a otro shell (otro panel) y lea desde foo
:
<foo whatever
Esto tampoco depende de tmux.
Si desea pegar el resultado en otro panel (por ejemplo, para convertirlo en un fragmento de un nuevo comando en un shell allí):
- Invocar
pwd
normalmente en el panel de origen. - Vaya al modo de copia y copie la salida. Con soporte para mouse, basta con mantener presionado el botón izquierdo del mouse y arrastrar. Después de soltar el botón, el texto seleccionado se almacena en un búfer automáticamente.
- Al panel de destino.
- Pegue el texto almacenado con
paste-buffer
( prefix]por defecto).