歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Shell學習(一) 入門到復雜自己做的各種腳本實例與解釋

Shell學習(一) 入門到復雜自己做的各種腳本實例與解釋

日期:2017/3/3 16:14:55   编辑:關於Linux

Shell變量詳解

什麼是變量?為什麼要使用變量?

各種shell環境中都使用到了“變量”的概念,shell變量用來存放系統和用戶需要使用的特定參數(值),而且這些參數可以根據用戶的設置或系統環境的變化而相應的變化。通過使用變量,shell程序可以提供更加便捷靈活的功能,實用性和靈活性更強。

常見的shell變量類型包括自定義變量,環境變量,預定義變量,位置變量。

最簡單的一個 開機登錄提示腳本

備份腳本

Mysql 備份腳本

#!/bin/bash
#mysql 數據庫簡單備份
#1.定義數據連接目標庫信息
MY_USER="users"
MY_PASS="abc123"
MY_HOST="192.168.129.2"
MY_denglu="-u $MY_USER -p$MY_PASS -h $MY_HOST"
MY_DB1="test"
#2.定義備份時目錄,時間,文件名
BF_DIR="/opt/mysql_bak"
BF_CMD="/usr/local/mysql/bin/mysqldump/"
BF_TIME='date +%Y%m%d-%H%M'
NAME="$MY_DB1-$BF_TIME"
#導出腳本 進行壓縮
$BF_CMD $MY_denglu --databases $MY_DB1 > $BF_DIR/test.sql

vsftp腳本

查看腳本

最關鍵的一個

 

1 #!/bin/bash
2 #監控磁盤,內存,CPU使用情況
3 DUG=$(df -h|grep "/$"|awk '{print $5}'|awk -F%'{print $1}') //切割出根系統占用情況
4 IDLE=$(mpstat|tail-1|awk '{print $11}'|awk -F. '{print $1}') //切割出CPU使用情況
5 CUG=`expr100- $IDLE`
6 USED=$(free|grep"cache:"|awk '{print $3}') // 切割出內存使用情況
7 TOTAL=$(free|grep"Mem:"|awk'{print $2}')
8 MUG=`expr $USED \*100 / $TOTAL`
9 #磁盤占用>90% CPU使用>80% 內存使用>90% 告警郵件通過mail發送給管理員
10 alert="/tmp/"alert.txt" 變量

11if [ -e $alert ] 如果這個 文件存在則
12 then
13 mail -s"Host Alert"[email protected] 發送mail給管理員
14 else
15 touch$alert 如果不存在則重新建立文件
16 fi
17 if[$DUG-gt 90] 如果系統磁盤占用空間大於90% 那麼就打印 DUG-ge90 追加到 alert文件裡
18 then
19 echo "DUG -ge90">>$alert
20 fi
21 if[ $CUG-gt 80 ] 如果CPU占用空間大於80% 那麼就打印 CUG-ge80 追加到 alert文件裡
22 then
23 echo"CUG -ge80">>$alert
24 fi
25 if [ $MUG -gt 80 ] 如果內存占用空間大於80% 那麼就打印 MUG-ge80 追加到 alert文件裡
26 then
27 echo "MUG -ge80" >> $alert
28 fi

本文出自 “▁▁技術控ヽ” 博客,請務必保留此出處http://chenhao6.blog.51cto.com/6228054/1230337

Copyright © Linux教程網 All Rights Reserved