欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux下Shell腳本中幾種基本命令的替換區(qū)別

 更新時間:2016年10月25日 08:45:51   作者:IT兄弟盟  
最近因為工作需要,需要編寫shell腳本。編寫大量shell腳本時,累計了大量經(jīng)驗,也讓自己開始迷糊幾種函數(shù)輸出調(diào)用的區(qū)別。后面和前輩們請教了一下這個問題,大致明白了區(qū)別。這里分享給大家,希望對大家能有所收獲。下面來一起看看吧。

Part 1 : ` command `

這是 “命令標(biāo)準(zhǔn)輸出作為函數(shù)標(biāo)準(zhǔn)輸入” 操作方法之一,有很大的弊端以及不安全的地方。

缺點一:比較陳舊。

缺點二:容易與單引號混淆。(其實它是你鍵盤“!”左邊那個鍵)

Part 1.5 ` command``與 $(command) 倆者區(qū)別

直接看幾張圖吧,看這圖解釋他們區(qū)別...

大家可以看到倆種表達(dá)方式,分別是代表命令直接執(zhí)行和嵌套執(zhí)行。

我們發(fā)現(xiàn):執(zhí)行`` $() 是相同的。

附,其實這里有個小bug...( 橙色框框 ):即你怎么知道嵌套執(zhí)行計算機(jī)是真的鑲嵌執(zhí)行的呢?

所以我又截圖一張...可以看到直接執(zhí)行的情況下計算機(jī)確實是按照從左到右這樣執(zhí)行的。

所以得出證明,嵌套執(zhí)行計算機(jī)是真的鑲嵌執(zhí)行,我們操作是確實有效的!

他們支持多層嵌套,對運維工作有不可言語的巨大作用。

Part 2 : $(command)

這是 “命令標(biāo)準(zhǔn)輸出作為函數(shù)標(biāo)準(zhǔn)輸入” 操作方法之二,使用這種方法的人也最多!

這種方法的優(yōu)點是:以$(command)形式可以互相嵌套多個命令擴(kuò)展。

Part 3 : ${command}

那具體是什么意思呢?簡而言之,將變量函數(shù)$()進(jìn)行替換以\${}輸出

嗯...意思是到了但是還不正確。。但是我們現(xiàn)在知道倆點關(guān)于${}

第一點:$() 是用來運行命令的,不是用來運行替換變量的。簡而言之,\$()就是用來執(zhí)行命令,其他干不了

第二點:${} 是用來替換變量的。但是它不能給你執(zhí)行變量替換,僅僅能幫\$()信息讀出來。

第三點:echo ${#name} 可以統(tǒng)計替換變量長度單位。

結(jié)論:$()用來執(zhí)行;\${}用來變量替換,但不能執(zhí)行。

Part 4 : $(){command}

關(guān)于這點,這里就不細(xì)說了。

結(jié)論:$(){command}定義了個方法名叫\(zhòng)$,這個方法執(zhí)行了command命令

最后結(jié)文:

` command``$(command) 倆者無區(qū)別,都是執(zhí)行命令?!懊顦?biāo)準(zhǔn)輸出作為函數(shù)標(biāo)準(zhǔn)輸入”

\${command} $(){command} 倆者類似。前者用來讀取變量替換內(nèi)容,但不能執(zhí)行。

唔...加一點話。群里的朋友給我提供了一份RHCE的官方手冊,上面對“命令標(biāo)準(zhǔn)輸出作為函數(shù)標(biāo)準(zhǔn)輸入”有一個簡單的解釋,即:命令替換。

命令替換允許命令的輸出替換命令本身。當(dāng)命令包含前導(dǎo)美元符號和括號$(command)或者反引號 command時,就會發(fā)生命令替換。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

相關(guān)文章

  • Shell根據(jù)日期、月份、星期判斷年份的代碼

    Shell根據(jù)日期、月份、星期判斷年份的代碼

    這篇文章主要介紹了Shell根據(jù)日期、月份、星期判斷年份的代碼,需要的朋友可以參考下
    2016-12-12
  • Shell在循環(huán)中使用i++

    Shell在循環(huán)中使用i++

    在 Shell 腳本中,可以使用 (( i++ )) 或者 let "i++" 來增加變量 i 的值,這用于在循環(huán)中自增變量 i,本文介紹Shell在循環(huán)中使用i++的示例,感興趣的朋友一起看看吧
    2023-12-12
  • Linux?Shell如何用ssh命令統(tǒng)計分布式集群信息詳解

    Linux?Shell如何用ssh命令統(tǒng)計分布式集群信息詳解

    作為命令的ssh,作用就是在一臺linux機(jī)器上去登錄到另一臺linux機(jī)器,下面這篇文章主要給大家介紹了關(guān)于Linux?Shell如何用ssh命令統(tǒng)計分布式集群信息的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • Linux下使用expect命令編寫自動化交互腳本

    Linux下使用expect命令編寫自動化交互腳本

    今天小編就為大家分享一篇關(guān)于Linux下使用expect命令編寫自動化交互腳本,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-11-11
  • Linux命令之ps命令使用詳解

    Linux命令之ps命令使用詳解

    這篇文章主要給大家介紹Linux命令之ps命令使用方法,文中有詳細(xì)的代碼示例,對我們學(xué)習(xí)Linux命令有一定的幫助,感興趣的同學(xué)可以參考閱讀下
    2023-06-06
  • Linux命令每天必學(xué)之 useradd/adduser 新增用戶

    Linux命令每天必學(xué)之 useradd/adduser 新增用戶

    Linux下useradd或adduser命令用來建立用戶帳號和創(chuàng)建用戶的起始目錄,使用權(quán)限是超級用戶。接下來通過本文給大家介紹每天必學(xué)Linux命令之 useradd/adduser 新增用戶的相關(guān)知識,需要的朋友參考下吧
    2018-10-10
  • shell腳本5種執(zhí)行方式及腳本不同的執(zhí)行方法和區(qū)別詳解

    shell腳本5種執(zhí)行方式及腳本不同的執(zhí)行方法和區(qū)別詳解

    我們都知道bash?shell?腳本的方法有多種,下面這篇文章主要給大家介紹了關(guān)于shell腳本5種執(zhí)行方式及腳本不同的執(zhí)行方法和區(qū)別的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • Linux復(fù)制文件命令cp之使用解說

    Linux復(fù)制文件命令cp之使用解說

    Linux下的命令有很多,其中有一個命令,我一直使用都存在問題,那就是cp命令了。今天通過本文給大家介紹Linux復(fù)制文件命令cp之使用解說,感興趣的朋友一起學(xué)習(xí)吧
    2016-11-11
  • Linux shell中如何獲取當(dāng)前目錄

    Linux shell中如何獲取當(dāng)前目錄

    這篇文章主要介紹了Linux shell中如何獲取當(dāng)前目錄問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 使用shell腳本找出網(wǎng)站的空頁面和404錯誤頁面

    使用shell腳本找出網(wǎng)站的空頁面和404錯誤頁面

    這篇文章主要介紹了使用shell腳本找出網(wǎng)站的空頁面和404錯誤頁面,本文使用一句話實現(xiàn),需要的朋友可以參考下
    2014-11-11

最新評論