屏幕

屏幕

所以这是一个多部分的问题,我有一个 vps,我通过 ssh 连接到它来运行一些进程。

我希望能够启动进程并关闭我的终端窗口,但仍然能够通过 ssh 返回并检查进程。

我还希望每个进程都将其打印到终端的内容输出到一个文件中,最好以启动它的命令命名。(包括标志等)

我怎样才能最好地实现这个目标?

答案1

实现这一目标的方法可能有多种,但以下是一些基本方法:

屏幕

screen允许创建虚拟控制台,将其从您的 tty 中分离(CTRLA然后是CTRLD)并screen -r在您需要时将其重新连接()。

禁止

nohup是一个允许您运行命令的软件,它将忽略任何挂断信号并将命令的输出写入nohup.out文件cwd。实际上,按照以下命令运行ssh然后注销将使进程继续运行nohup dd if=/dev/random of=/dev/null &

球座

tee命令在非常简单的用法中充当一个 fork 机器,它同时将其写入stdin文件和stdout。在你的情况下,这将是ls -alh | tee 'ls'。如果你还想写入stderr文件,请将2&>1(意思是“重定向stderrstdout”)附加到你的基本命令中。

通过结合这些解决方案,您应该能够实现您想要的目标。您还可以看到类似的答案:8703001/1732775

相关内容