公衆號:aming_linux
博客: blog.lishiming.netlinux
開頭(首行)須要加: #!/bin/bash
這裏是指文件使用的是bash語法,經過/bin/bash解釋器來執行的。 shell
以#開頭的行做爲解釋說明: bash
腳本的名字以.sh結尾,用於區分這是一個shell腳本運維
執行.sh腳本方法有兩種:函數
1先給.sh腳本添加x權限:.net
chmod +x 1.sh
.sh腳本的絕對路徑回車:3d
/root/1.sh
2bash(bash=sh)執行.sh腳本:日誌
bash 1.sh
查看腳本執行過程:code
sh -x 1.sh
檢測shell腳本的語法錯誤:blog
sh -n 1.sh
date命令在·shell·腳本里的大部分是對日誌進行文件名的更改,和對一些文件作日期上的區分。
查看當前時間
[root@shuai-01 ~]# date 2018年 02月 25日 星期日 14:51:35 CST [root@shuai-01 ~]# LANG=en [root@shuai-01 ~]# date Sun Feb 25 14:52:25 CST 2018
date +%Y : 打印四位數字的年份
[root@shuai-01 ~]# date +%Y
2018
date +%y : 打印兩位數字的年份
[root@shuai-01 ~]# date +%y
18
date +%m : 打印月份
[root@shuai-01 ~]# date +%m
02
date +%d : 表示日期
[root@shuai-01 ~]# date +%d
25
date +%H : 表示小時
[root@shuai-01 ~]# date +%H
14
date +%M : 表示分鐘
[root@shuai-01 ~]# date +%M
58
date +%S : 表示秒
[root@shuai-01 ~]# date +%S
35
date +%w : 表示星期,0表示週日
[root@shuai-01 ~]# date +%w
0
表示年月日:
[root@shuai-01 ~]# date +%Y%m%d
20180225
[root@shuai-01 ~]# date +%F
2018-02-25
表示時間:
[root@shuai-01 ~]# date +%T 18:44:10
顯示日曆:
[root@shuai-01 ~]# cal February 2018 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
date 標記昨天的日期:
[root@shuai-01 ~]# date -d "-1 day" Sat Feb 24 18:47:16 CST 2018 [root@shuai-01 ~]# date -d "-1 day" +%F 2018-02-24
1. 當腳本中使用某個字符串較頻繁而且字符串長度很長時就應該使用變量代替 2. 使用條件語句時,常使用變量 if [ $a -gt 1 ]; then ... ; fi 3. 引用某個命令的結果時,用變量替代 n=`wc -l 1.txt` 4. 寫和用戶交互的腳本時,變量也是必不可少的 read -p "Input a number: " n; echo $n 若是沒寫這個n,能夠直接使用$REPLY 5. 內置變量 $0, $1, $2… $0表示腳本自己,$1 第一個參數,$2 第二個 .... $#表示參數個數 6. 數學運算a=1;b=2; c=$(($a+$b))或者$[$a+$b]