shell 是用c語言編寫的程式,便於使用者與linux核心系統進行互動。
linux的shell種類眾多,常見的有:
bourne again shell (bash) 由於易用和免費,在日常中被廣泛使用。同時也是大多數linux系統預設的shell。
第乙個 shell指令碼
使用文字編輯器vi/vim ,新建乙個檔案 kimbo_test.sh, 副檔名.sh 代表shell。
ps: 副檔名並不影響指令碼執行,用於標識(見名知意)
#!/bin/bash"#!" 是乙個約定標記,告訴系統需要什麼直譯器執行,即使用哪一種shellecho
"hello world!
"
shell 只有單行注釋,使用符號 "#"
shell 變數
1.定義:必須使用字母、下劃線
2.使用: 用美元符號 "$" ,加上變數名
#!/bin/bash說明:大括號用來表明變數的邊界,也可以 直接使用 $my_name 。為了可讀性、防止歧義,建議使用大括號## 定義變數
my_name="
kimbo
"## 列印變數
echo $
shell 字串
單引號:屬於強引用,任何字元都會原樣輸出
雙引號:屬於弱引用,可以解析變數、轉義字元 (盡可能使用雙引號)
拼接字串
#!/bin/bash2.獲取字串長度## 定義變數
my_name="
kimbo
"my_work="
data analysis
"## 拼接變數
my_result="my name is $,my work is $."
## 列印變數
echo $
#!/bin/bash3.擷取部分字元## 定義變數
my_name="
kimbo
"## 列印變數,取字串長度
echo $
語法:$,start表示從**開始擷取,len表示 總共擷取多少位。
#!/bin/bash4. 其他擷取方式## 定義變數
my_name="
kimbo
"## 列印變數,從左邊第2個字元開始,擷取3位
echo $
語法:$ 最小限度從左邊擷取str
$ 最大限度從左邊擷取str
$ 最小限度從右邊擷取str
$ 最大限度從右邊擷取str
#!/bin/bash執行結果:##定義變數
my_website="
"## 列印變數
echo
"var is: $
"## 從左邊開始查詢,擷取右邊的字元(保留後面)
## 最小限度
echo
"1: $
"## 最大限度
echo
"2: $
"## 從右邊開始查詢,擷取左邊的字元(保留前面)
## 最小限度
echo
"3: $
"## 最大限度
echo
"4: $
"
5. 字元替換
i) 首次替換:$
ii)全部替換:$
#!/bin/bash執行結果:test_str="
this is kimbo,he is a humor guy. by kimbo zhang.
"echo
"單替換:$
"echo
"全部替換:$
"
shell 擷取字串
假設有變數 var 一 號擷取,刪除左邊字元,保留右邊字元。echo 其中 var 是變數名,號是運算子,表示從左邊開始刪除第乙個 號及左邊的所有字元 即刪除 http 結果是 www.linuxidc.com test.htm 二 號擷取,刪除左邊字元,保留右邊字元。echo 表示從左邊開始刪除最...
shell 擷取字串
shell中擷取字串的方法有很多中,一共有9種使用方法。上面4種可以用來進行預設值的替換。上面這種可以獲得字串的長度。最小限度從後面擷取word 最大限度從後面擷取word 最小限度從前面擷取word 最大限度從前面擷取word 上面4個就是用來擷取字串的方法了。有了著四種用法就不必使用cut命令來...
shell 擷取字串
1.e asdf asdf asdf sdfsdf echo 結果 asdf asdf sdfsdf 用 操作符,表示匹配asdf字串,並從該字串後面開始擷取剩下的字串 2.e asdf asdf asdf sdfsdf echo 結果 asdf as 其中的 0 表示左邊第乙個字元開始,7 表示字...