20.1 shell腳本介紹
shell是一種腳本語言 aming_linux blog.lishiming.net
能夠使用邏輯判斷、循環等語法
能夠自定義函數
shell是系統命令的集合
shell腳本能夠實現自動化運維,能大大增長咱們的運維效率
20.2 shell腳本結構和執行
shell腳本結構和執行方法
開頭須要加#!/bin/bash
以#開頭的行做爲解釋說明
腳本的名字以.sh結尾,用於區分這是一個shell腳本
執行方法有兩種
chmod +x 1.sh; ./1.sh
bash 1.sh / sh 1.sh
查看腳本執行過程 bash -x 1.sh
查看腳本是否語法錯誤 bash -n 1.sh
20.3 date命令用法
date +%F %T
date +%Y-%m-%d, date +%y-%m-%d 年月日 = +%F
date +%H:%M:%S = date +%T 時間
date +%s 時間戳 距離1970年0點0分多少秒
date -d @1504620492
date -d "+1day" 一天後
date -d "-1 day" 一天前
date -d "-1 month" 一月前
date -d "-1 hour" 一小時前
date -d "-1 min" 一分鐘前
date +%w 星期幾
date +%W 今年的第幾周
20.4 shell腳本中的變量
當腳本中使用某個字符串較頻繁而且字符串長度很長時就應該使用變量代替
使用條件語句時,常使用變量 if [ $a -gt 1 ]; then ... ; fi
引用某個命令的結果時,用變量替代 n=`wc -l 1.txt`
寫和用戶交互的腳本時,變量也是必不可少的 read -p "Input a number: " n; echo $n 若是沒寫這個n,能夠直接使用$REPLY
內置變量 $0, $1, $2… $0表示腳本自己,$1 第一個參數,$2 第二個 .... $#表示參數個數
數學運算a=1;b=2; c=$(($a+$b))或者$[$a+$b]
shell 單括號運算符號:
a=$(date);
等同於:a=`date`;
雙括號運算符:
a=$((1+2));
echo $a;
等同於:
a=`expr 1 + 2`