博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Powershell单双引号字符串的区别
阅读量:5076 次
发布时间:2019-06-12

本文共 1511 字,大约阅读时间需要 5 分钟。

最近做一些脚本自动化的事情,发现一个很有意思的东西,如下,如果用户账户包含了$符号,就会抛出一个“User cannot be found”的异常。

New-SPSite $CommunityUrl -OwnerAlias "ASIAPACIFIC`\$ExSquareDEV001" -Name "$CommunityName" -Template "STS#0" -ContentDatabase $CommunityDatabase New-SPSite : User cannot be found.

上MSDN搜索了一下,发现了一篇文章讲述到了这个原因:

Quotation Marks in Windows PowerShell

First, let's review the basic distinction between single and double quotation marks in the Windows PowerShell language. It concerns the interpretation of variables.

  • Double quotes. When a command or expression that includes variables is enclosed in double quotes ("), the variables are replaced by their values before the command is executed.

  • Single quotes. When a command or expression that includes variables is enclosed in single quotes ('), the variables are not replaced by their values. Instead, they are interpreted literally.

There's actually a lot more to it – nested quotes and doubled quotes and escaped quotes and quotes in here-strings -- but these are the basics. For the rest, at the Windows PowerShell prompt, type:

  • get-help about_quoting_rules

大意是由于$是PowerShell变量的标志符号,所以不同的引号会做不同的处理。

双引号内的PowerShell变量会先计算出值,然后输出。

单引号内的PowerShell变量作为字符串直接输出。

看下面的一个示例:

使用双引号赋值,

变量赋值:$ExSquareServiceAccount = "ASIAPACIFIC\$ExSquareDEV001"

输出变量值:ASIAPACIFIC\

由于后面的认成了变量,而并没有赋值,这个时候就为空,输出就是前面的字符串了。

如果使用单引号,

变量赋值:$ExSquareServiceAccount = 'ASIAPACIFIC\$ExSquareDEV001'

输出变量值:ASIAPACIFIC\$ExSquareDEV001

整个字符串不会进行变量替换,直接输出。

转载于:https://www.cnblogs.com/justForMe/archive/2012/05/25/2517842.html

你可能感兴趣的文章
logging.basicConfig函数
查看>>
双主键关联映射(double primary key)
查看>>
HTTP 499 状态码 nginx下 499错误[转]
查看>>
iOS : 判断运行设备类型是否是iPad
查看>>
ES6 对象的扩展
查看>>
jQuery快速入门
查看>>
1035-Spell checker(模糊匹配)
查看>>
QT内使用OpenCV
查看>>
Rman-03002,Rman-12010,Rman-12012
查看>>
http请求
查看>>
C语言相关的经典书籍
查看>>
ios12.1 tabBar 中的图标及文字出现位置偏移动画
查看>>
linux学习笔记之IO
查看>>
幻灯片slider
查看>>
oracle11G在linux环境下的卸载操作
查看>>
[ZJOI 2018] 线图
查看>>
[SHOI2016] 黑暗前的幻想乡
查看>>
SAP PS 模块,项目、WBS与网络作业概念
查看>>
hdu 5059
查看>>
App上架/更新,3.2.1问题被拒,从入门到放弃
查看>>