【问题标题】:How to stop script from sending mails? [duplicate]如何阻止脚本发送邮件? [复制]
【发布时间】:2020-02-02 22:24:07
【问题描述】:

操作系统:Raspbian Lite 内核版本:4.19

我正在使用脚本来监控服务,以便在服务出现故障时启动该服务。我已经在crontab 中添加了它,它做得很好。唯一的问题是它将输出发送到/var/mail/piYou have new mail in /var/mail/pi

我担心文件会变得太大,或者在某个时间点它会因此而停止工作。

我在网上找到了脚本,不知道要修改什么才不会发邮件:

# vi /var/www/html/service_monitor.sh

#!/bin/bash

serv=DisplayM

sstat=dead

systemctl status $serv | grep -i 'running\|dead' | awk '{print $3}' | sed 's/[()]//g' | while read output;

do

echo $output

if [ "$output" == "$sstat" ]; then

    sudo systemctl start $serv

    echo "$serv service is now UP !" | echo "$serv service was DOWN. Restarting now on $(hostname)"

    else

    echo "$serv service is running"

    fi

done

这些可以像某种日志一样,所以我不介意保留 /var/mail/pi 文件,但最好保留最后 100 个条目并删除其他条目。

你怎么看?

【问题讨论】:

    标签: bash sh


    【解决方案1】:

    如果您希望阻止 CRON 创建电子邮件,可以通过以下几种方式完成:

    • 将输出重定向到 dev/null:0 5 * * * /example/script >/dev/null 2>&1
    • 列表项将 cron mailto 设置为空白:MAILTO=""

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-16
    • 2020-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多