我正在研究 nohup 命令,但不确定它支持哪些 shell。看起来这个程序在 bash 和 tcsh 中的工作方式不同。我尝试的是非常简单的事情。
nohup --help
当我从 bash 启动它时,它工作得很好,但对于 tcsh 来说,
--help:未找到命令。
这绝对不意味着命令不起作用,但这是一个令人困惑的指标。由于我运行的机器上的设置似乎让程序在终止前保留相当长的时间,因此很难真正验证 nohup 是否正常工作。
另一个表明事情没有按预期工作的指标是,当运行我计划运行的脚本时,它的工作方式也有所不同。在 bash 中运行时,它将输出到 nohup.out,而在 tcsh 中则不会(它输出到我运行 nohup 命令的终端)。
有任何想法吗?
在 rhel6 和 rhel7 上测试
答案1
进入时bash
,使用时nohup
将使用外部实用程序nohup
。 GNU coreutils 的版本nohup
确实有一个--help
可以输出一些信息的标志。
当 in 时tcsh
,usingnohup
将使用 shell 的内置命令nohup
,即使存在同名的外部实用程序。有关该 shell 中tcsh
内置函数的更多信息,请参阅手册。nohup
nohup
要在 中使用 GNU coreutils tcsh
,请使用该实用程序及其完整路径,例如/usr/bin/nohup --help
。