Linux 为什么我会得到“的信息?”;暂停(tty输入)";当我在后台运行脚本时
我编写了一个tcsh脚本来清除集群中的垃圾数据,代码如下:Linux 为什么我会得到“的信息?”;暂停(tty输入)";当我在后台运行脚本时,linux,shell,background-process,jobs,Linux,Shell,Background Process,Jobs,我编写了一个tcsh脚本来清除集群中的垃圾数据,代码如下: set hosts = $1 set clear_path = $2 foreach i ($hosts) rsh $i rm -rvf $clear_path end 当我在后台运行此脚本时,如下所示: disk_clean.sh hosts_all /u0/data/tmp > log & 作业将被卡住,并显示如下信息: [1] + Suspended (tty input) 如果我在前台运行这个,它可以
set hosts = $1
set clear_path = $2
foreach i ($hosts)
rsh $i rm -rvf $clear_path
end
当我在后台运行此脚本时,如下所示:
disk_clean.sh hosts_all /u0/data/tmp > log &
作业将被卡住,并显示如下信息:
[1] + Suspended (tty input)
如果我在前台运行这个,它可以正常完成。
为什么会发生这种情况?如何在后台运行此脚本并将输出重定向到日志文件中?Rsh从标准输入(您的终端)读取数据并将数据传递到远程系统。Unix和Linux系统在后台停止进程并尝试从终端读取数据。给rsh提供
-n
选项,告诉它不要从标准输入中读取任何内容。它可以工作,非常感谢!似乎我没有仔细阅读rsh的手册页。