后台进程显示“已暂停(tty输出)”

时间:2019-06-10 17:54:53

标签: macos shell csh tcsh

Apple OS X High Sierra。我想要一个后台进程(nohup,因此它不依赖于打开的终端窗口),该进程将坐在那里,并定期检查我的UPS状态,并在状态更改(断电)时给我发送电子邮件。

我以为我重定向了watch命令的输出。

这是我的代码:

 #!/bin/csh                                                                                                                                        
    while (1)
        /opt/local/bin/watch -n 5 -g "pmset -g batt" >> /tmp/upslog.txt
        echo "Something is going on with the UPS!" | mail -s "UPS warning" "my@email.edu"
        sleep 5
    end

所有部分都能完美独立地工作,但是

当我与nohup一起运行时,

%nohup〜/ upswarning.sh&

它立即抱怨

[2] 36486
[OFFICE:/Applications/ppbe/extcmd] % 
[2]  + Suspended (tty output)        ~/upswarning.sh

是否有更好的方法使其静音,或者说服父级shell忽略它并使其在后台运行?

0 个答案:

没有答案