Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 使用条件运算符或if语句合并两个shell脚本_Bash_Shell_Sh - Fatal编程技术网

Bash 使用条件运算符或if语句合并两个shell脚本

Bash 使用条件运算符或if语句合并两个shell脚本,bash,shell,sh,Bash,Shell,Sh,我是Bash shell脚本的新手,我有两个脚本作为cronjobs在AWS EC2中运行 第一个脚本作为cronjob运行,每天将MySQL数据库备份复制到S3,该脚本在服务器上每天上午12:10运行 #!/bin/bash DAY_2=`(date --date='1 days ago' '+%m-%d-%y')` cd /home/mysqlbackup/ tar -czvf $DAY_2.tgz /home/mysqlbackup/$DAY_2 s3cmd put /home/mysql

我是Bash shell脚本的新手,我有两个脚本作为cronjobs在AWS EC2中运行

第一个脚本作为cronjob运行,每天将MySQL数据库备份复制到S3,该脚本在服务器上每天上午12:10运行

#!/bin/bash
DAY_2=`(date --date='1 days ago' '+%m-%d-%y')`
cd /home/mysqlbackup/
tar -czvf $DAY_2.tgz /home/mysqlbackup/$DAY_2
s3cmd put /home/mysqlbackup/$DAY_2.tgz s3://mysql_backup/ubuntu/
第二个脚本也作为cronjob在同一台服务器上运行,以监视服务器的磁盘空间。此脚本每4小时运行一次

#!/bin/sh
df -H | grep -vE '^Filesystem' | awk '{ print $5 " " $1 }' | while read output;
do
  echo $output
  usep=$(echo $output | awk '{ print $1}' | cut -d'%' -f1  )
  partition=$(echo $output | awk '{ print $2 }' )
  if [ $usep -ge 85 ]; then
    echo "Running Out Of Space On Mysql Backup Server \"$partition and Space Used ($usep%)\" On $(hostname) As On $(date)"|
    /usr/bin/mail -s  "Alert: Almost Out Of Disk Space. Space Used  $usep%" xxx@example.com
  fi
done
所以问题是我让这些脚本单独运行。我需要一个脚本来监控服务器的磁盘空间,因此,每当磁盘空间使用率超过85%时,它应该自动将MySQL数据库备份复制到S3,如果磁盘空间使用率低于85%,则意味着脚本应该在每天上午12:10正常复制MySQL数据库备份

我无法将这两个脚本组合成一个脚本,因为我的编程技能非常有限。因此,我在Stack Overflow中发布帖子,以寻求专业帮助来完成上述任务


任何帮助都将不胜感激。

不要将脚本组合在一起——那样会导致疯狂。修改磁盘空间检查脚本,以便在需要备份时调用备份脚本。您好,感谢您的快速响应。您能否帮助我如何以及在何处调用备份脚本。在
/usr/bin/mail
行之后,添加
/where/you/keep/your/backup cronscript
作为额外命令。