¿Cómo leer el contenido actual del terminal mediante programación?

¿Cómo leer el contenido actual del terminal mediante programación?

¿Hay alguna forma de leer el contenido actual del terminal (ventana visible o búfer completo, lo que sea más fácil) mediante programación?

Necesito esto porque estoy intentando desarrollar un programa que,despuésAl ejecutar un comando arbitrario, funciona con su salida. me estresodespués- Sé que se utilizan tuberías para esto, pero el propósito del programa es evitar eso.

Una posible solución sería una combinación de programación Select allseguida de una xselinvocación, aunque no conozco ninguna forma de realizar la primera operación [en Gnome Terminal].

Respuesta1

Puedes hacerlo con un script usando screeny xdotool.

Este podría ser tu outputworker.sh:

#!/bin/sh
$1
xdotool key --clearmodifiers ctrl+a colon h a r d c o p y space o u t p u t Return Return
your_command output

Luego , se ejecuta el comando start screeny do y se envía una devolución a su sesión, lo que produce un archivo llamado , que puede usar en su otro programa que trabaja con la salida.outputworker.sh command<ctrl-a>:hardcopy outputscreenoutput

Editar: El segundo Returnevita screenesperar un tiempo de espera mientras muestra el resultado de la copia impresa.

información relacionada