#710 单引号与双引号,以及嵌入语句   powershell     字符串     8 months ago (owner) Document
  • 单引号括起字符串里面的$不进行演算
  • 双引号括起字符串里面的$进行演算
  • 脱字符`可以转义单、双引号,及$符号

  • 双引号里的$var进行演算时,var只能是一个普通变量,如果要在双引号里嵌入需要演算出结果的语句,则需要通过"$(expressions)"的形式
  • 双引号里的$var,如果var后面跟着一个冒号,则var会被当做一个namespace进行解释,并继续解析冒号后面的token,然后把var:token当做一个完整的变量来进行演算,但若作用域不是我们的本意,则需要用${var}的形式明确告诉解释器var是一个变量,而不是namespace
    • 结合上一条,若$var是一个变量,则"${var}"与"$($var)"等价,即用"$(expressions)"总是没错的