鳥哥例項練習
變數設定方式說明$
若變數內容從頭開始的資料符合「關鍵字」,則將符合的最短資料刪除
$若變數內容從頭開始的資料符合「關鍵字」,則將符合的最短資料刪除
$若變數內容從尾向前的資料符合「關鍵字」,則將符合的最短資料刪除
$若變數內容從尾向前的資料符合「關鍵字」,則將符合的最長資料刪除
$若變數內容符合「舊字串」,則第乙個舊字串會被新字串替換
$若變數內容符合「舊字串」,則全部的舊字串會被新字串替換
設定個變數用於練習
[root@piero ~]# echo $path
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@piero ~]# export path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
[root@piero ~]# echo $path
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
刪除:# ,##,%,%%,* 等配合echo $
# echo $
/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
#代表內容變數的最前開始向右刪除,由/開始,*表示萬用字元0到無窮個字元
# echo $
/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
#最短匹配
# echo $
/root/bin
##最長匹配
# echo $path
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
# echo $
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:
%從右往左匹配
echo $
/usr/local/sbin:/usr/local/bin:
echo $
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo $mail
/var/spool/mail/root
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo $
spool/mail/root
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo $
/var/spool/mail
替換:
# echo $
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
# echo $
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
關於-[root@izwz96z5n0mtqtsen3cfs9z mj]# unset str;var=$
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo var=$ str=$
var=newvar str=
[root@izwz96z5n0mtqtsen3cfs9z mj]# str="oldvar";var=$
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo var=$ str=$
var=oldvar str=oldvar
var的值取決於str是否存在,-並不影響舊變數的內容
關於+[root@izwz96z5n0mtqtsen3cfs9z mj]# unset str;var=$
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo var=$ str=$
var= str=
[root@izwz96z5n0mtqtsen3cfs9z mj]# str=oldvar;var=$
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo var=$ str=$
var=newvar str=oldvar
關於=[root@izwz96z5n0mtqtsen3cfs9z mj]# unset str;var=$
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo var=$ str=$
var=newvar str=newvar
會替換舊變數的值
[root@izwz96z5n0mtqtsen3cfs9z mj]# str=oldvar;var=$
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo var=$ str=$
var=oldvar str=oldvar
變數測試
[root@izwz96z5n0mtqtsen3cfs9z mj]# str="oldvar";var=$
[root@izwz96z5n0mtqtsen3cfs9z mj]# echo var=$ str=$
var=oldvar str=oldvar
shell 變數刪除與替換
1 從左往右刪除匹配內容 root localhost echo 獲取變數值 root localhost echo 獲取變數長度 16 root localhost echo 從左往右最短匹配 root localhost echo 從左往右最長匹配 cn2 從右往左刪除匹配內容 root loc...
linux變數內容的刪除和替換
shell內建了對變數進行刪除和替換的功能,非常的方便。雖然平時用的機會非常少,但是閱讀別人寫的指令碼時,會經常遇到。所以進行乙個學習總結。從變數頭部開始匹配模式,將符合的最短資料刪除 從變數頭部開始匹配模式,將符合的最長資料刪除 從變數尾部開始匹配模式,將符合的最短資料刪除 從變數尾部開始匹配模式...
Shell 批量替換 刪除檔案中的內容
大量檔案修改同一內容 find name xml xargs perl pi e s 修改前內容 修改後內容 g 此方法用完後會出現檔案丟失問題,不懂為何。我一一對應找到丟失檔案,重新貼上複製提示檔案還在此資料夾下,只不過隱身了。乙個文件修改大量相同內容 sed i s 修改前內容 修改後內容 g ...