【发布时间】:2012-10-02 18:06:40
【问题描述】:
我在使用 nohup 在后台运行 top 命令时遇到问题。首先,我在本地运行它,作为
nohup top &
它在nohup.out 中使用文本top: failed to get tty 抱怨。我的最终目标是在远程机器上运行 top,比如
nohup ssh -t user@hostname top &
目前,上面的命令也失败了
Pseudo-terminal will not be allocated because stdin is not a terminal.^M
TERM environment variable not set
有什么想法吗?
PS:我运行这个命令从machineA ping machineB。 machineA 始终处于活动状态,但并非始终处于登录状态。
【问题讨论】:
-
你可以使用屏幕。它将打开一个终端,然后运行 top,然后您可以分离(Ctrl+a 然后 d)退出,但让屏幕在后台运行。如果你不介意我问,你想达到什么目的?
-
我很困惑为什么你要这样做。
-
@JanitoVaqueiroFerreiraFilho 我必须使用我的 linux 发行版中内置的 nohup,而且我没有 root 权限来安装
screen -
呼应@tcaswell - 你为什么要这样做?
nohup的目的是在它所连接的 tty 因某种原因消失时保持运行。但是,如果top没有 tty,则无法检查其输出,或向top提供输入,因此保持其运行毫无意义。而且,如果不使用screen或dtach或其他东西,就无法将其重新附加到 tty 以使其再次有用... -
我认为您想查看 cron 作业 manpagez.com/man/5/crontab,它将以指定的时间间隔运行命令。您能否详细说明您正在尝试做的事情?