手动运行bash脚本文件(通过终端)产生的结果与在bash上运行时产生的结果不同?

时间:2017-08-30 16:34:13

标签: linux bash cron ubuntu-14.04

我正在编写一个bash脚本,通过磁盘百分比监视磁盘空间使用情况。

usage.sh

#!/bin/bash
NUMARRAY=$(df --output=pcent | sed '1d;s/^ //;s/%//')
ARR=( $NUMARRAY )

for hddPercentageUsage in "${ARR[@]}"; do
         #echo $hddPercentageUsage;
         if((hddPercentageUsage >= 50)); then
                echo 'Half of disk space is taken up'
         fi
done

命令

df --output=pcent | sed '1d;s/^ //;s/%//'

生成这样的东西,我基本上循环遍历该字符串:

 1
 1
78
 0
 0
 0
 0
 1

如果我手动运行(通过终端),脚本会生成正确的结果。 如果我通过'crontab -e'命令运行它,它不会产生“占用磁盘空间的一半”(当其中一个磁盘占用率超过50%时)

Cronjob命令

*/5 * * * * /home/ubuntu/space_log/./usage.sh > /home/ubuntu/space_log/space.log

任何帮助人?感谢

0 个答案:

没有答案