探索PowerShell(十五) 引號與逸出字元

來源:互聯網
上載者:User

基礎用法

總結說來:

單引號任何情況下都只表示引號內自身的字元。也就是說,單引號內的內容不會進行變數的代換與字元的轉義。而在雙引號中,則允許進行變數代換和字元轉義。在對變數進行代換和字元進行轉義的判斷上,是由命令最外層的引號決定的。

詳細介紹,還是要用樣本來說明。

使用雙引號輸出: 複製代碼 代碼如下:$a="World" <enter>
"Hello, $a" <enter>

運行結果為:

若使用單引號,將命令改為:

複製代碼 代碼如下:$a="World" <enter>
'Hello, $a' <enter>

則輸出結果為:

這一點很簡單,在本教程之前的文章中也有所提及。

輸出引號

在單引號中,如果要列印單引號,只需要使單引號重複即可,即,兩個單引號會產生一個單引號輸出。

例如: 複製代碼 代碼如下:$a="PowerShell" <enter>
'I''m $a' <enter>

運行結果為:

在單引號中輸出雙引號可以直接輸出,不需要進行轉換。如:

同樣在雙引號中,如果要輸出單引號,也不需要轉換,直接列印即可。 而且,如果需要在雙引號中列印雙引號,也只需要重複雙引號即可,即,兩個雙引號會產生一個雙引號輸出。

例1:

例2: 複製代碼 代碼如下:$a="PowerShell" <enter>
"""My name is $a"",this program said." <enter>

運行結果如下:

使用逸出字元

為了輸出一些特殊字元,我們需要使用逸出字元,在PowerShell中,逸出序列由反引號定義,也就是鍵盤F1下面與波浪線同鍵的字元" ` "。

常用的逸出字元串有:

`' 單引號
`" 雙引號
`0 空值 NULL
`a 警示
`b 退格
`f 跳頁
`n 新行
`r 換行
`t 橫向Tab鍵(水平定位字元)
`v 縱向Tab鍵(縱向定位字元)

當然,在雙引號中的變數名前使用反引號,也會取消此變數代換的功能。

例如上例中:

複製代碼 代碼如下:$a="PowerShell" <enter>
"""My name is `$a"",this program said." <enter>

輸出結果將為: 複製代碼 代碼如下:"My name is $a",this program said.

需要說明的另一點,就是反引號的另一個作用:承接命令語句。

當我們需要輸入的命令太長,則可以在命令中合適的地方使用反引號,另起一行接著上條命令書寫。至於前面所指的“合適”的地方,簡單的說,總不能將一個單詞拆開吧。

例如:

Get-WmiObject Win32_NetworkAdapterConfiguration | Get-Member -MemberType Methods | Format-List
上面的命令非常長,不僅不便於我們的輸入,也不便於修改、查看,所以,可以使用反引號修改如下:

Get-WmiObject Win32_NetworkAdapterConfiguration |` Get-Member -MemberType Methods |` Format-List

只需在命令結束後多敲一次斷行符號,表示全部命令輸入完畢即可,在命令中使用反引號與否,最終的運行結果是一樣的。

使用反引號,不僅能夠協助我們更加方便的書寫,在編寫指令碼時也利於命令的修改,查看。個人感覺,尤其在管道符後面使用反引號,十分利於理清命令結構。

至於其他逸出字元的使用,其實都如同於在程式設計語言中或者其他指令碼中的使用,方法都是一樣的。就請各位自己試一試吧。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.