shell基礎

     

Shell基礎

1、            腳本命名

     *.sh

2、            命名變量

1)自定義變量:

name=zhangsan

2)#env

大寫字母

3)$

#echo $name

#echo $PATH

4)作用域

      默認自定義變量—局部

      通過調用多個shell進程

      打開shell---父

          再次打開shell---子

                Shell----------子

          #env

            SHLVL==shell  level

      #export

     

5){}

  #Name=zhansan

  #echo {$name}isastudent

6) >   >>   輸出

   <  <<   輸入

   〈〈:制定終止的符號

 

  #cat  < &0   表示接受來自鍵盤的輸入

  #cat  < file   表示接受來自文件的輸入

 

      at  <file  -m

 

     系統在接受輸入輸出內容存在方向

 

輸入輸出描述符:

  輸入:鍵盤      0

  輸出:屏幕      1

  錯誤輸出:分離  2

  臨時符號---起過渡作用3-9

     /dev/null----虛擬出來的一個設備(黑洞)

  LS 3<&2  3>file ????

 

7)read  ---從鍵盤讀取變量的值

 注意當變量的數量和值得數量不一致的情況

#read  變量名

8)常見參數

  $?-----表示顯示最近一條命令的執行狀態

  狀態分類:

   退出狀態0:表示成功

   退出狀態1:表示失敗

 

  條件:

   test   操作數1  操作符   操作數2

   test    1  〉 2

   操作符:

     數值類型數據比較

     字符串類型數據表較

     文件類型數據表較

[ ]:代替test

 注意括號前後加空格

 操作數和操作符之間要有空格

[  -x   file   ]

 

  .   腳本文件

  Sh  腳本文件

  ./腳本文件

雙引號:解釋變量

單引號:當作字符串顯示

$#:參數的總的數量

$*:顯示所有參數

$1:各個參數

$2……$9

shift  [n] :將參數向前移n位

 

 

9)流程控制結構

If:

  If  條件

  Then

     執行命令

  Elif  條件

  Then

     。。。

  Else

   。。。

Fi

File5.sh

執行命令的狀態也可以當作條件

$?----

  內核通過接受到命令退出時返回的數字,判斷該命令是否執行成功

  exit 100

 

測試接受參數清款

 如果接受的參數小於3個,提醒

 如果大於3個,顯示參數

 

接受參數可以當條件

環境變量也可以當條件

  如果是root身份登陸,提示

  如果不是root,

 

 

 

 

 

Case語句

 語法

  Case   值  in

  模式1|模式3)

       命令1

       。。。

       。。。。

        ;;

  模式2)

      

  Esac

提醒:模式裏可以使用通配符

 

shell腳本是給內核看

 

 

for循環

 語法:

  for  變量名 in 列表

  do

    命令1

     。。。

  done

 

 

until

   until  條件

   do  

命令。。。。。

   done

 

while

  while  條件

  do

      命令

  done

 

break:終止當前循環

contine:終止當前次循環

 

計算

  expr  表達式

  $((…..))

 

函數:定義使用

應用

發佈了73 篇原創文章 · 獲贊 4 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章