首页
/
每日頭條
/
職場
/
linuxshell編程怎麼加條件
linuxshell編程怎麼加條件
更新时间:2025-07-01 07:27:20

談一談Linux中Shell編程的轉義和引用

Shell中的兩類字符

(1)、普通字符:

Shell中除了本身的字面意思外沒有其他特殊意義。

(2)、元字符:

Shell的保留字符,在Shell中有着特殊意義的專用字符。

1、轉義

指使用轉義符引用單個字符,從而使其表達單純的字符的字面含義。

Shell中的轉義符是反斜杠"\",使用轉義符的目的是使轉義符後面的字符單純地作為字符出現,而不解釋其特殊的含義。

案例1:

[root@localhost odysee]# name=odysee

[root@localhost odysee]# echo ${name}

odysee

[root@localhost odysee]# echo \${name}

${name}

解釋:

echo ${name}:

"$"作為一個特殊的字符,Shell解釋為"取出并打印name變量的值"。

案例2:

*:

一般作為的通配符使用。

例如:

查找odysee 的sh結尾的所有文件

find ~odysee/ -name "*.sh"

linuxshell編程怎麼加條件(談一談Linux中Shell編程的轉義和引用)1

我現在需要它作為一個普通的*

例如:

echo 9\*9 = 81

這裡就作為一個普通的字符來使用

linuxshell編程怎麼加條件(談一談Linux中Shell編程的轉義和引用)2

2、 引用

指字符串用某種符号括起來,以防止特殊字符被解析為其他意思。

Shell中的4種引用符

""[雙引号]:

又叫"部分引用"或"弱引用",可以引用出除$、``、\之外的所有字符。

即:$、反引号(`)、轉義符(\)特殊字符依然會被解析為特殊意義。

''[單引号]:

又叫"全引用"或"強引用",可以引用所有字符。

即:所有的特殊字符都不會被shell解釋。

``[反引号]:

将反引号括起來的内容解釋為系統命令。

也是命令替換的一種,将命令的标準輸出作為值賦給某個變量。

最後有補充。

\[轉義符]:

轉義符引用單個字符,從而使其表達單純的字符的字面含義。

案例1:

測試雙引号

[root@localhost home]# num=9527

[root@localhost home]# echo "${num}"

9527

[root@localhost home]# echo "\${num}"

${num}

[root@localhost home]# echo "`ls`"

odysee

stephen

userShell

比較簡單,就解釋一下echo "`ls`"

echo "`ls`":

""内的``依然表示特殊的含義,提取ls命令執行後的結果,然後在echo出來。

linuxshell編程怎麼加條件(談一談Linux中Shell編程的轉義和引用)3

案例2:

測試單引号

[root@localhost home]# count=9527

[root@localhost home]# echo '${count}'

${count}

[root@localhost home]# echo '\${count}'

\${count}

單引号裡面的所有的特殊字符都不會被shell解釋。

linuxshell編程怎麼加條件(談一談Linux中Shell編程的轉義和引用)4

案例3:

測試反引号

[root@localhost home]# echo `ls ~/`

anaconda-ks.cfg Desktop Documents Downloads General Music original-ks.cfg Pictures Public Templates Videos

[root@localhost home]#

提取ls ~命令執行後的結果,然後在echo出來。

linuxshell編程怎麼加條件(談一談Linux中Shell編程的轉義和引用)5

3、 命令替換

指将命令的标準輸出作為值賦給某個變量,Shell編程中使用比較頻繁。

例如:

count=`ls ~/`或者count=$(ls ~/)

将ls ~/執行的結果賦值給count變量。

命令替換的兩種方式:

(1)、反引号

(2)、$()

案例:

[root@localhost home]# count=`ls ~/`

[root@localhost home]# echo ${count}

anaconda-ks.cfg Desktop Documents Downloads General Music original-ks.cfg Pictures Public Templates Videos

[root@localhost home]# num=$(ls ~/)

[root@localhost home]# echo ${num}

anaconda-ks.cfg Desktop Documents Downloads General Music original-ks.cfg Pictures Public Templates Videos

[root@localhost home]#

這兩者執行的結果是相同的

linuxshell編程怎麼加條件(談一談Linux中Shell編程的轉義和引用)6

測試完成。

歡迎大家給予寶貴的意見或者建議。

歡迎大家補充或者共享一些其他的方法。

感謝支持。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
主播被仲裁要求賠錢後還要直播嗎(又一跳槽主播被拘留15天并賠兩千萬)
主播被仲裁要求賠錢後還要直播嗎(又一跳槽主播被拘留15天并賠兩千萬)
  各位小夥伴們大家好呀,這裡是每天都會給大家帶來遊戲資訊的小泛團。      近日有小夥伴爆料稱名為賞金術士的英雄聯盟主播由于在與鬥魚的跳槽官司中敗訴,被判賠償接近兩千萬的賠償金,而賞金術士并沒有執行自己償還違約金的義務,從而被納入了失信人員名單,而且還被拘留了15天。這到底是怎麼一回事呢?      說起賞金術士,相信各位英雄聯盟的老玩家應該都不會太陌生...
2025-07-01
塗松岩演技派完整版(塗松岩上演塗式浪漫生命緣)
塗松岩演技派完整版(塗松岩上演塗式浪漫生命緣)
  今日21:18,由中國人壽獨家冠名的北京衛視大型醫療“治愈系”紀實季播節目《生命緣·生命的禮物》第二季第五期治愈之旅即将開啟。4歲女孩彤彤突發腦腫瘤,生命垂危。“陽光使者”塗松岩溫暖探望,将生命的禮物與祝福送給彤彤及家人。      四歲女兒突患腦腫瘤 急診手術隻為“保命”   “誰也沒有想到,明天孩子就可能沒(了)...”四歲的彤彤一直是爸爸媽媽眼裡的...
2025-07-01
職場言情文推薦(推文12本高口碑)
職場言情文推薦(推文12本高口碑)
  #頭條創作挑戰賽#      每日推文: 職場愛情文,商戰愛情,強強聯手,職場夫妻。事業文,先婚後愛系列。   目錄:   1. 《物色》作者:時鏡   2. 《出租男友》作者:莫裡_   3. 《顧先生,我勸你善良》作者:餘姗姗   4. 《沉睡的方程式》作者:風曉櫻寒   5. 《非訴搭檔(原名:我的破産男友)》作者:風曉櫻寒   6. 《辦公室隐婚...
2025-07-01
全力做好防汛防範措施(七裡崗鄉多措并舉)
全力做好防汛防範措施(七裡崗鄉多措并舉)
     6月份為撫州市主汛期,東臨新區七裡崗鄉搶抓有利時機,開展汛期備戰準備。在衛星水庫的堤壩上,小編看見水庫安全員正在記錄水庫水位,他表示,會密切監視水位,隻要出現險情,會第一時間聯系上級,疏散群衆。   據了解,七裡崗鄉利用宣傳橫幅、牆體标語、小廣播、入戶宣傳等方式,在各村開展防汛宣傳工作,提高村民防汛意識。鄉政府也組織各村工作人員,對區域内河道、池塘...
2025-07-01
泰康人壽培訓筆記(泰康專業化培訓體系)
泰康人壽培訓筆記(泰康專業化培訓體系)
  日前,泰康人壽HWP-ETA(精英财富學院)嘉年華在北京舉行,來自全國的68名健康财富規劃師(HWP)參加此次沉浸式财富研修之旅。本次ETA嘉年華走進泰康集團、泰康資産、漢坤律所、安永會計師事務所、國投泰康信托等,拓寬HWP财富視野,緻力于幫助HWP持續為客戶提供優質财富管理服務。   ETA嘉年華僅是泰康人壽為HWP構建專業化培訓體系的一部分。六年來,...
2025-07-01
Copyright 2023-2025 - www.tftnews.com All Rights Reserved