我今天从命令行运行了一个脚本(php,不确定这很重要),它有我想看的输出,但我必须在它完成之前回家,而且我不知道如何在不杀死脚本的情况下退出。通常我只是关闭笔记本电脑(休眠),但脚本似乎没有完成。
我可以点击一些键盘组合来退出终端并保持脚本运行吗?它也会打印一个日志文件,以便我稍后检查。
答案1
在关闭 shell 会话后让脚本继续运行的最直接方法是使用终端多路复用器程序。终端多路复用器将允许您同时运行多个 shell 会话,而无需主动连接到每个会话,即使在断开(分离)它们之后也是如此。最受欢迎的 2 个是screen
和tmux
。
我个人使用screen
并且它对我来说效果非常好。您启动一个screen
会话,启动程序/脚本,断开连接(分离),然后稍后重新连接到分离的会话以查看情况如何。
安装:
sudo apt-get install screen
要开始会话:
screen
要从会话断开(分离):
Ctrl+A那么d
列出正在运行的会话:
screen -ls
要重新连接到分离的会话,请使用以下输出screen -ls
screen -r [pid.tty.host]
这些只是帮助您前进的基础知识,但与往常一样,man screen
还有更多信息