如何编程复制终端内容?

3
如何通过设备号读取xterm或终端的内容,类似于在文本上移动鼠标。 将终端输出重定向或复制到文件也是一种选择,只要可以在不与在此终端中执行的命令交互的情况下完成即可。 因此不要像'command > myfile'这样的操作。 还是唯一的解决方法是使用OCR打印屏幕或模拟鼠标移动和点击吗? 编辑:我正在寻找一种解决方案,无论其来源如何都可以读取内容,例如'echo“to tty”> /dev/pts/1'。

也许这个问题的答案http://stackoverflow.com/questions/29987557/xterm-dump-of-full-scrollable-window-content可以帮助你。 - Thomas Baruchel
1个回答

2
script 命令可能适合你使用。

"Script 可以记录终端上的一切输出内容。对于需要将交互式会话记录下来作为作业证明的学生非常有用,因为 typescript 文件可以在之后打印出来" - man script

甚至可以在使用 xterm 命令时传入 script 作为命令并使用 -e 参数:

ubuntu@ubuntu:~$ xterm -e script
ubuntu@ubuntu:~$ # 新的 xterm 窗口被打开。执行 uname 命令,然后退出。
ubuntu@ubuntu:~$ # 输出内容被默认捕获到一个名为 typescript 的文件中:
ubuntu@ubuntu:~$ cat typescript
Script started on Tue 19 Nov 2013 06:00:07 PM PST
ubuntu@ubuntu:~$ uname
Linux
ubuntu@ubuntu:~$ exit
exit
Script done on Tue 19 Nov 2013 06:00:13 PM PST ubuntu@ubuntu:~$

不幸的是,通过“echo“AAAAAAAAAAAAAa”>/dev/pts/1”直接写入控制台并不会被记录。 - inselberg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接