Bash 使用条件运算符或if语句合并两个shell脚本
我是Bash shell脚本的新手,我有两个脚本作为cronjobs在AWS EC2中运行 第一个脚本作为cronjob运行,每天将MySQL数据库备份复制到S3,该脚本在服务器上每天上午12:10运行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
#!/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
作为额外命令。