繁体   English   中英

如何在 bash 中发送有关磁盘空间的邮件警报

[英]how to send the mail alert regarding disk space in bash

我可以在 Linux 中发送简单测试的邮件

echo "body" | mail -s "test" xxx@yahoo.com

但下面的代码不起作用

#!/bin/bash
VAR1=$(df / | grep / | awk '{ print $5}' | sed 's/%//g')
VAR2=$(df  /dev/sda1 | grep /dev/sda1 | awk '{ print $5}' | sed 's/%//g')
VAR3=$(df /dev/mapper/centos-var | grep /dev/mapper/centos-var | awk '{ print $5}' | sed 's/%//g')
THRESHOLD=50
TODAY=$(date)
if [ "$VAR1" -gt "$THRESHOLD" ] ; then
  mail -s 'Disk Space Alert'  rupendra@3ess.in  << EOF
  Date of $TODAY
  Your system  partition remaining free space is critically low.
  / partition used is  $VAR1%
  / usr partition used is  $VAR2%
  / var partition used is $VAR3%

你收到什么错误?

以下一个对我有用,

#!/bin/bash

set -x

VAR1=$(df / | grep / | awk '{ print $5}' | sed 's/%//g')
VAR2=$(df /dev/sda1 | grep /dev/sda1 | awk '{ print $5}' | sed 's/%//g')
VAR3=$(df /dev/mapper/centos-var | grep /dev/mapper/centos-var | awk '{ print $5}' | sed 's/%//g')
THRESHOLD=50
TODAY=$(date)

echo "VAR1=$VAR1, THRESHOLD=$THRESHOLD"

if [ "$VAR1" -gt "$THRESHOLD" ] ; then
mail -s 'Disk Space Alert' abcd@xyz.com << EOF
Date of $TODAY
Your system partition remaining free space is critically low.
/ partition used is $VAR1%
/ usr partition used is $VAR2%
/ var partition used is $VAR3%

EOF

fi

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM