shell(1)介紹、腳本結構和執行、date命令、腳本中的變量、腳本中邏輯判斷、文件目錄屬性判斷

      一、shell腳本介紹

blob.png

我自定的shell腳本基本是放在/usr/local/sbin/目錄下。



                    二、Shell腳本結構和執行

blob.png

腳本命令:

bash +腳本文件路徑

sh  +腳本文件路徑

查看腳本執行過程-x  :bash -x 1.sh

查看腳本是否語法錯誤 -n:bash -n 1.sh



                三、date命令用法(在shell腳本中經常使用到這個命令的結果)


 date  +%Y-%m-%d, date +%y-%m-%d 年月日

 date  +%H:%M:%S = date +%T 時間

 date +%s  時間戳 (以1970爲始)

 date -d @1504620492

 date -d "+1day"  一天後

 date -d "-1 day"  一天前

 date -d "-1 month" 一月前

 date -d "-1 min"  一分鐘前

 date +%w, date +%W 星期

date +%Y 年份以四位數顯示

date +%y 年份以兩位數顯示

date +%m 表示月份

date +%d 表示日期

date +%H 表示小時

date +%M  表示分鐘

date +%S 表示秒


對比 date -d "-1 day " 和date -d "-1 day " +%F的區別:

blob.png

時間戳和具體時間日期進行轉換

blob.png



          四、shell腳本中的變量

blob.png

變量可以多次是使用和調用




        五、腳本中的邏輯判斷

blob.png


格式1:if 條件 ; then 語句; fi

1. if條件語句的格式:(在腳本中寫這些語句的時候不要加分號“;”,在命令行中直接執行要加分號)

 if [ $a -gt 1 ];

 then ... ;

 fi

blob.png

(if(($a>5))==if [ $a -gt >5 ])


格式2:if 條件; then 語句; else 語句; fi

if [ $a -gt 1 ];

 then ... ;

 else 語句;

 fi


格式3:if …; then … ;elif …; then …; else …; fi

邏輯判斷表達式:if [ $a -gt $b ]; if [ $a -lt 5 ]; if [ $b -eq 10 ]等 -gt (>); -lt(<); -ge(>=); -le(<=);-eq(==); -ne(!=) 注意到處都是空格

可以使用 && || 結合多個條件

if [ $a -gt 5 ] && [ $a -lt 10 ]; then

 if [ $b -gt 5 ] || [ $b -lt 3 ]; then



                        六、文件目錄屬性判斷


blob.png



 [ -f file ]判斷是否是普通文件,且存在

blob.png

blob.png

 [ -d file ] 判斷是否是目錄,且存在

 [ -e file ] 判斷文件或目錄是否存在

 [ -r file ] 判斷文件是否可讀

 [ -w file ] 判斷文件是否可寫

 [ -x file ] 判斷文件是否可執行


{
[ -f $f ] && rm -rf $f ==if [-f $f ];then ;rm -rf $f fi

}








































































發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章