2018最新linux云计算集群架构师-第一阶段-Linux操作系统入门到精通-第20章-实战-3个shell脚本实战
实战-3个shell脚本实战
实战1:编写脚本检查服务器运行状态
#新建文件
vim status.sh
#文件内容
#!/bin/bash
if [ $# -ge 1 ] ; then
systemctl status $1 > /dev/null
if [ $? -eq 0 ] ; then
echo "$1 服务正在运行"
else
systemctl start $1
fi
else
echo "执行脚本的格式"
echo "sh $0 服务名"
fi
实战2:根据学生的成绩判断 学生的优劣
#新建文件
vim check_cj.sh
#文件内容
#!/bin/bash
read -p "请输入你的成绩 " cj
if [ $cj -ge 0 ] && [ $cj -le 59 ] ;then
echo "补考"
elif [ $cj -ge 60 ] && [ $cj -le 70 ] ;then
echo "良好"
elif [ $cj -ge 71 ] && [ $cj -le 85 ] ;then
echo "好"
elif [ $cj -ge 86 ] && [ $cj -le 100 ] ;then
echo "优秀"
else
echo "成绩的有效范围是0-100之间"
fi
实战3:每周一晚上3:00 ,备份数据库服务器上webdb库的所有数据到系统的/mysqlbak目录里,使用系统日期做备份文件名。
#新建文件
vim mysqlbak.sh
#文件内容
#!/bin/bash
baknamefile=`date +%Y-%m-%d`
bakdir=/mysqlbak
user=root
password=123
dbname=webdb
[ -e $bakdir ] || mkdir $bakdir
mysqldump -u$user -p$password --flush-logs $dbname>$bakdir/${baknamefile}-webdb.sql
因为mysql咱们还没有学,这里以/etc目录来做实验
#新建文件
vim etcbak.sh
#内容如下
#!/bin/bash
baknamefile=`date +%Y-%m-%d`
bakdir=/etcbak
srcdir=/etc
[ -e $bakdir ] || mkdir $bakdir
tar zcvf ${bakdir}/${baknamefile}-etc.tar.gz /etc/
echo "========================"
ls -lh ${bakdir}/${baknamefile}-etc.tar.gz
echo "back etc is ok!"
#赋予权限
chmod +x etcbak.sh
#打开 crontab
crontab -e
#输入内容
0 3 * * * /root/etcbak.sh 2>&1 > /dev/null
posted on 2019-12-04 20:39 herisson_pan 阅读(9) 评论(0) 收藏 举报
浙公网安备 33010602011771号