Shell基礎教程七:Shell字串

Dreamhai發表於2020-12-21

字串是shell程式設計中最常用最有用的資料型別(除了數字和字串,也沒啥其它型別好用了),字串可以用單引號,也可以用雙引號,也可以不用引號。單雙引號的區別跟PHP類似。

單引號

str='this is a string'

單引號字串的限制:

  • 單引號裡的任何字元都會原樣輸出,單引號字串中的變數是無效的;
  • 單引號字串中不能出現單引號(對單引號使用轉義符後也不行)。

雙引號

your_name='qinjx'
str="Hello, I know your are \"$your_name\"! \n"

雙引號的優點:

  • 雙引號裡可以有變數
  • 雙引號裡可以出現轉義字元

拼接字串

your_name="qinjx"
greeting="hello, "$your_name" !"
greeting_1="hello, ${your_name} !"
echo $greeting $greeting_1

獲取字串長度

string="abcd"
echo ${#string} #輸出 4


提取子字串

string="alibaba is a great company"
echo ${string:1:4} #輸出liba

輸出結果:
liba

解釋:
'1' : 標識從下表為1的字元開始擷取
'4' : 表示 擷取4個字元

查詢子字串

string="alibaba is a great company"
echo `expr index "$string" is`

相關文章