一、shell寫一個猜數字程式
s number game;
init()
{
echo " ################################### "
echo " "
echo " 猜 數 字 "
echo " "
echo " ################################### "
}
game()
{
number=$[$RANDOM%100]
while :
do
read -p "輸入你要猜測的數字: " n1
n2=`echo $n1 | sed 's/[0-9]//g'`
if [ ! -z $n2 ]
then
echo "你輸入的不是一個數字."
continue
fi
if [ $n1 == $number ]
then
echo "你猜對了."
read -p "你還想再玩一次麼?(yes/no)" an1
while true
do
case $an1 in
yes)
game
break
;;
no)
break
;;
*)
exit
esac
done
break
elif [ $n1 -gt $number ]
then
echo "猜大了."
continue
else
echo "猜小了."
continue
fi
done
}
while true
do
init
echo "1: Start Game "
echo "0: exit "
read -p " please input 0-1:" NUM
case $NUM in
1)
game
break
;;
0)
break
;;
esac
done
二、監控tomcat的程式,發現tomcat挂了,重新開機
(1)分析
1.擷取tomcatID
TomcatID=$(ps -ef |grep tomcat |grep -w 'tomcat'|grep -v 'grep'|awk '{print $2}')
2.判斷
if [ $TomcatID ];then #這裡判斷Tomcat程序是否存在
(2)具體的腳本
#!/bin/bash
source .bashrc
# 監控tomcat是否開啟
count1=$(ps aux | grep /usr/local/tomcat8/bin/bootstrap | grep -v grep| wc -l)
if [ $count1 -eq 0 ]
then
sh /usr/local/tomcat8/bin/startup.sh &> /dev/null
sleep 5
count2=$(ps aux | grep /usr/local/tomcat8/bin/bootstrap | grep -v grep | wc -l)
if [ $count2 -eq 1 ]
then
echo "tomcat restart is ok."
else
echo "tomcat restart is fail."
fi
else
echo "tomcat is running."
fi
三、mysql的備份腳本,每天2:00執行,任務排程
(1)準備工作
1.删除原mysqldump.sql檔案
2.登入mysql
3.使用資料庫
use scott;
4.退出
exit
(2)備份
(1)核心代碼
這裡為了區分,對每天自動儲存的檔案進行命名,此處使用日期作為命名。注意此處的單引号為Tab鍵上方的`
mysqldump -uroot -p123QWEasd! --set-gtid-purged=OFF scott>`date +%F%T`.sql
(2)編輯savemysql.sh檔案如下
[root@one ~]# vi savemysql.sh
#! /bin/bash
#author:斯特凡今天也很帥
#每日10:29分備份資料庫
MY_user="root"
MY_pass="123QWEasd!"
mysqldump -u $MY_user -p$MY_pass --set-gtid-purged=OFF scott > `date +%F%T`.sql
(3)給腳本權限
此處的755是全部權限的意思
[root@one ~]# chmod 755 savemysql.sh
也可以使用以下代碼來實作
[root@one ~]# chmod +x savemysql.sh
給到後再顯示目錄,檔案為綠色
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAnYldHL0FWby9mZvwFN4ETMfdHLkVGepZ2XtxSZ6l2clJ3LcV2Zh1Wa9M3clN2byBXLzN3btgHL9s2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xCMy81dvRWYoNHLwEzX5xCMx8FesU2cfdGLwMzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsQTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5SMykTMyQDN4cTZ0IDNxIjNzYzX4IDN1QTMyAzLcFTMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
(4)編輯/etc/crontab檔案來設定自動備份
[root@one ~]# crontab -e
添加以下代碼,以實作每天的10:50分自動執行savemysql.sh代碼
50 10 * * * /root/savemysql.sh