mikebai.com

  • Home
  • dev
  • DotNET
  • M365
  • 搞笑
  • 杂七杂八
  • FocusDict
個人BLOG
it developer
  1. Main page
  2. M365
  3. Main content

PowerShell单引号字符串和双引号字符串的区别

2020-11-30 119hotness 0likes 0comments

from https://blog.csdn.net/thinktik/article/details/81165858

输入字符串表达式时,可以使用单引号(”)或双引号(“”)括住字符串,但PowerShell解析单引号和双引号中字符串的方式是不同的。更多请看(www.omob.cc)

一、单引号括住的字符串,字符串被精确地传递到命令,字符串中包含的任何表达式都不会被计算,只会被解释成文本。例如:

$varA=200

Write-host 'The value of $varA is $varA.'
1
2
3
输出为:

The value of $varA is $varA.
1
变量$varA不会被相应的值替换。

二、双引号括住的字符串,在字符串传递到命令执行前,变量名会被变量值替代,表达式也会被计算。例如:

例1:

$varA=200

Write-host "The value of $varA is $varA."
1
2
3
输出为:

The value of 200 is 200.
1
变量$varA相应的值200替换。

例2:

"The value of $(100+100) is 200"
1
输出为:

The value of 200 is 200.
1
表达式$(100+100)被计算,并且结果被插入字符串中。

要避免双引号中的字符串被变量值/表达式值替换,需要在变量名/表达式前使用反单引号()。例如:

$varA=200

Write-host "The value of `$varA is $varA."
1
2
3
输出为:

The value of $varA is 200.
1
三、如果字符串使用单引号括起来,同时被括起的字符串中包含单引号,则需使用两个单引号,例如:

'He doesn''t want to go home.'
1
如果字符串使用双引号括起来,同时被括起的字符串中包含双引号,则需使用两个双引号,例如:

"He said, ""How are you?"""
1
当然,也可以使用反单引号(`)字符来强制PowerShell将单引号或双引号解释为文本,例如:

"He doesn`'t want to go home."

"He said, `"How are you?`""

Tag: Nothing
Last updated:2020-11-30

mikebai

This person is a lazy dog and has left nothing

Like
< Last article
Next article >

COPYRIGHT © 2025 mikebai.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang