Shell 腳本(shell script),是一種爲 shell 編寫的腳本程序。php
Shell 編程跟 java、php 編程同樣,只要有一個能編寫代碼的文本編輯器和一個能解釋執行的腳本解釋器就能夠了。java
Linux 的 Shell 種類衆多,常見的有:shell
默認爲 #!/bin/bash。編程
#!/bin/bash echo "Hello World !"
定義變量時,變量名不加美圓符號($,PHP語言中變量須要),如:bash
your_name="runber"
注意,變量名和等號之間不能有空格:編輯器
使用一個定義過的變量,只要在變量名前面加美圓符號便可this
your_name="qinjx" echo $your_name echo ${your_name}
加花括號是爲了幫助解釋器識別變量的邊界:google
yo ="absy" echo ${yo}sjaj
使用 readonly 命令能夠將變量定義爲只讀變量,只讀變量的值不能被改變。spa
#!/bin/bash myUrl="http://www.google.com" readonly myUrl myUrl="http://www.baidu.com"
運行腳本,結果以下:code
/bin/sh: NAME: This variable is read only.
使用 unset 命令能夠刪除變量。但不能刪除只讀變量。
運行Shell腳本時候,會有三種變量類型
字符串是shell編程中最經常使用最有用的數據類型:
單引號:
單引號字符串的限制:
str='this is a string'
雙引號的優勢:
your_name='runoob' str="Hello, I know you are \"$your_name\"! \n" echo $str
Hello, I know you are "runoob"!
your_name="runoob" # 使用雙引號拼接 greeting="hello, "$your_name" !" greeting_1="hello, ${your_name} !" echo $greeting $greeting_1 # 使用單引號拼接 greeting_2='hello, '$your_name' !' greeting_3='hello, ${your_name} !' echo $greeting_2 $greeting_3
輸出結果
hello, runoob ! hello, runoob ! hello, runoob ! hello, ${your_name} !
string="abcd" echo ${#string} #輸出 4
如下實例從字符串第 2 個字符開始截取 4 個字符:
string="runoob is a great site" echo ${string:1:4} # 輸出 unoo
查找字符 i 或 o 的位置(哪一個字母先出現就計算哪一個):
string="runoob is a great site" echo `expr index "$string" io` # 輸出 4
注意: 以上腳本中 ` 是反引號,而不是單引號 ',反引號是能夠輸出腳本命令。
echo `ifcongfig`