基本上,我已经设置了一些运行不同程序的 Raspberry Pi,我想看看它们输出的内容。我显然可以通过 SSH 连接,但这是一个新的 tty 会话。尝试用谷歌搜索,但我觉得我的术语有点奇怪!
答案1
尝试screen
:
登录到终端并输入apt-get install screen
以进行安装。
输入 来启动屏幕screen
。
点击 Enter 跳过欢迎屏幕。
启动一个进程,例如缓慢的下载:
curl --limit-rate 5K \
http://archive.raspbian.org/raspbian/dists/wheezy/main/binary-armhf/Packages
按^ad
- Ctrl+a(释放按钮)d - 分离。
关闭终端。
以同一用户身份登录(如果愿意,可以通过 SSH)并输入screen -r
以恢复。
screen 还能做更多,请查看man screen
。
附注:如果您希望您的进程在启动时启动,您应该考虑使用初始化脚本并让你的进程写入日志文件。
答案2
据我所知,没有办法观察在单独的 shell 中运行的命令的输出。每个 shell(例如 bash)实例都是一个单独的实体,您无法从不同的 shell 与其进行通信。
监控输出的唯一方法是让命令将其进度保存在文件中,然后监控该文件。例如,在 Pi 上:
some_command > some_file
或者,监视标准错误而不是标准输出:
some_command 2> some_file
然后,您可以通过运行以下命令在另一台计算机上查看进度
ssh user@pi tail -f /path/to/some_file