shell指令碼不僅可以幫助我們完成相應的業務需求,而且在很多時候妙用shell可以為我們的工作帶來很大的便捷,提公升工作效率,擴充套件程式設計思路。
以下則是一些常用shell方法:
假設有變數 var=
1. # 號擷取,刪除左邊字元,保留右邊字元。
echo $
其中 var 是變數名,# 號是運算子,*// 表示從左邊開始刪除第乙個 // 號及左邊的所有字元
即刪除 http://
結果是 :www.novicex.cn/post/y12.html
2. ## 號擷取,刪除左邊字元,保留右邊字元。
echo $
##*/ 表示從左邊開始刪除最後(最右邊)乙個 / 號及左邊的所有字元
即刪除 y12.html
結果是 y12.html
3. %號擷取,刪除右邊字元,保留左邊字元
echo
$
%/* 表示從右邊開始,刪除第乙個 / 號及右邊的字元
結果是:
4. %% 號擷取,刪除右邊字元,保留左邊字元
echo
$
%%/* 表示從右邊開始,刪除最後(最左邊)乙個 / 號及右邊的字元
結果是:http:
5. 從左邊第幾個字元開始,及字元的個數
echo $
其中的 0 表示左邊第乙個字元開始,5 表示字元的總個數。
結果是:http:
6. 從左邊第幾個字元開始,一直到結束。
echo $
其中的 7 表示左邊第8個字元開始,一直到結束。
結果是 :www.novicex.cn/post/y12.html
7. 從右邊第幾個字元開始,及字元的個數
echo $
其中的 0-7 表示右邊算起第七個字元開始,3 表示字元的個數。
結果是:12.
8. 從右邊第幾個字元開始,一直到結束。
echo $
表示從右邊第七個字元開始,一直到結束。
結果是:12.html
注:(左邊的第乙個字元是用 0 表示,右邊的第乙個字元用 0-1 表示)
your_name="runoob"
使用雙引號拼接
greeting="hello, "
$your_name
" !"
greeting_1="hello, $ !"
echo
$greeting
$greeting_1
使用單引號拼接
greeting_2='hello, '
$your_name
' !'
greeting_3='hello, $ !'
echo
$greeting_2
$greeting_3
輸出結果為:
hello, runoob
!hello, runoob
!hello, runoob
!hello, $ !
獲取字串長度
string="abcd"
echo
$#輸出 4
提取子字串
以下例項從字串第 2 個字元開始擷取 4 個字元:
string="runoob is a great site"
echo
$# 輸出 unoo
查詢子字串
查詢字元 i 或 o 的位置(哪個字母先出現就計算哪個):
string="runoob is a great site"
echo `expr index "$string" io` # 輸出 4
獲取陣列的長度
獲取陣列長度的方法與獲取字串長度的方法相同,例如:
取得陣列元素的個數
length=$
或者
length=$
取得陣列單個元素的長度
lengthn=$
shell指令碼常用指令碼
go指令碼總結 shell指令碼在我們工作過程中會起到相當重要的作用,下面是我在一年工作中儲存下來的常用的指令碼。在某個程式需要完成多機部署,並且路徑一致的時候,通過指令碼來完成部署,啟動,終止是一件很方便的事情。bin bash author zhaoyixing breif 程式部署指令碼 br...
shell指令碼幾種常用執行方法
ash shell 指令碼的方法有多種,現在作個小結。假設我們編寫好的shell指令碼的檔名為hello.sh,檔案位置在 data shell目錄中並已有執行許可權。方法一 切換到shell指令碼所在的目錄 此時,稱為工作目錄 執行shell指令碼 cd data shell hello.sh 的...
Linux C 常用shell指令碼
1.列出所有目錄使用量,並按大小排序。如下 ls xargs du h sort rn 不遞迴下級目錄使用du sh 2.檢視檔案排除以 開關和空白行,適合檢視配置檔案。如下 egrep v filename sed d d 3.刪除空格和空行。如下 sed d filename 刪除空行 sed ...