1 什麼shell
shell是一種腳本語言
能夠使用邏輯判斷、循環等語法
能夠自定義函數
shell是系統命令的集合
shell腳本能夠實現自動化運維,能大大增長咱們的運維效率
2 shell腳本結構和執行方法
開頭須要加#!/bin/bash
以#開頭的行做爲解釋說明
腳本的名字以.sh結尾,用於區分這是一個shell腳本
執行方法有兩種chmod +x 1.sh; ./1.sh
bash 1.sh
查看腳本執行過程 bash -x 1.sh
查看腳本是否語法錯誤 bash -n 1.sh
3 date命令用法shell
date +%F 年月日 2018-05-14 等價於 date +%Y-%m-%d date +%T 時分秒 22:45:23 等價於 date +%H:%M:%S date +%Y 四位表示的年份 2018 date +%y 兩位表示的年份 18 date +%m 月份 date +%M 分鐘 date +%d 日 date +%D 月日年 05/14/18 date +%H 時 date +%h 月份 5月 date +%M 分 date +%S 秒 date +%s 絕對時間戳 距離1970.1.1. 00:00:00 多少秒 date -d @1504620492 時間轉換 date -d "+1day" 一天後 date -d "-1 day" 一天前 date -d "-1 month" 一月前 date -d "-1 min" 一分鐘前 date +%w 星期幾 date +%W 第幾周
4 腳本中的變量
當腳本中使用某個字符串較頻繁而且字符串長度很長時就應該使用變量代替
使用條件語句時,常使用變量 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] bash