从 bash 执行 python 并查看其登录终端



>我有以下内容:

  1. main.py python脚本,在运行时写入main.log。
  2. 我正在写一个 sh 文件。

我想从 sh 文件执行 python 脚本,并在终端窗口中查看在执行时写入 main.log 文件的所有日志。

目前我正在通过打开一个终端并执行脚本并打开另一个终端并写入来做到这一点

tail -f main.log.

谢谢。

只需在

用于启动 python 脚本的命令后使用 & 即可将其作为后台进程启动。然后,您可以在同一终端中tail -f

我过去曾使用 nohup 命令基本上断开与进程的连接并让它在后台运行。语法类似于nohup <program execution and options> > main.log &

然后,您可以tail -f main.log实时观看它更新。

我在.sh无限运行或存在语法错误的nohup中遇到了问题,因此请务必在运行前检查正确性。除非您将语句的末尾更改为 2>&1 & 以使stderr重定向到 stdout,否则您可能不会抓住这一点,但由于您正在运行 python 脚本,我认为这对您没有帮助。

最后,您可以通过杀死命令提供给您的PID或使用ps -ef | grep <main.log>来终止由nohup创建的进程

最新更新