如何以程式設計方式讀取目前終端內容?

如何以程式設計方式讀取目前終端內容?

有沒有辦法以程式方式讀取目前終端內容(可見視窗或完整緩衝區,無論它更容易)?

我需要這個,因為我正在嘗試開發一個程序,執行任意命令,使用其輸出。我強調- 我知道管道是用於此目的的,但該程序的目的是避免這種情況。

一個可能的解決方案是結合編程Select allxsel調用,儘管我不知道[在 Gnome 終端中]執行第一個操作的任何方法。

答案1

screen您可以透過使用和 的腳本來完成此操作xdotool

這可能是你的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

然後啟動screen並執行outputworker.sh command命令,<ctrl-a>:hardcopy output並將返回值傳送到您的screen會話,產生一個名為 的文件output,您可以在處理輸出的其他程式中使用該文件。

編輯:第二個在顯示硬拷貝的輸出時避免等待逾時Returnscreen

相關內容