【探索PowerShell 】【十五】引号与转义字符

简介:

在PowerShell中,单引号与双引号有着不同的功能和作用。引号的使用规则往往跟变量的代换,以及特殊字符有关。

基础用法

总结说来:

单引号任何情况下都只表示引号内自身的字符。也就是说,单引号内的内容不会进行变量的代换与字符的转义。而在双引号中,则允许进行变量代换和字符转义。在对变量进行代换和字符进行转义的判断上,是由命令最外层的引号决定的。

详细介绍,还是要用示例来说明。

使用双引号输出:

$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   

上面的命令非常长,不仅不便于我们的输入,也不便于修改、查看,所以,可以使用反引号修改如下:


 
 
  1. Get-WmiObject Win32_NetworkAdapterConfiguration |`  
  2. Get-Member -MemberType Methods |`  
  3. Format-List    

如图:

只需在命令结束后多敲一次回车,表示全部命令输入完毕即可,在命令中使用反引号与否,最终的运行结果是一样的。

使用反引号,不仅能够帮助我们更加方便的书写,在编写脚本时也利于命令的修改,查看。个人感觉,尤其在管道符后面使用反引号,十分利于理清命令结构。

至于其他转义字符的使用,其实都如同于在编程语言中或者其他脚本中的使用,方法都是一样的。就请各位自己试一试吧。




     本文转自melvillo 51CTO博客,原文链接:http://blog.51cto.com/marui/300603,如需转载请自行联系原作者





相关文章
|
2月前
|
监控 关系型数据库 MySQL
PowerShell 脚本编写 :自动化Windows 开发工作流程
PowerShell 脚本编写 :自动化Windows 开发工作流程
56 0
|
3月前
|
Windows
Powershell 重新排列去重 Windows环境变量
【9月更文挑战第13天】本文介绍如何使用PowerShell对Windows环境变量进行重新排列和去重。首先通过`$env:`访问环境变量,接着使用`-split`命令分割路径,再利用`Select-Object -Unique`去除重复项。之后可根据需要对路径进行排序,最后将处理后的路径组合并更新环境变量。注意修改环境变量前应备份重要数据并了解潜在影响。
132 10
|
7月前
|
存储 Ubuntu Linux
windows可以安装Ubuntu,ubuntu上也可以安装Powershell
powerhsell除了可以在windows上使用外,还可以在Ubuntu上部署开发环境。下面介绍Ubuntu上安装powershell的方法。
212 0
|
Shell Linux 开发工具
windows中cmd和PowerShell批处理命令
之前在 Git 批量删除本地分支,有用到 Linux 或 MacOS 下的批处理命令,这个命令中的 grep、xargs 本身是 Shell script,在 windows 中的 cmd 和 PowerShell 中是不能用的
110 0
|
JavaScript Windows
[Vue]解决 Windows PowerShell 不识别 vue 命令的问题
[Vue]解决 Windows PowerShell 不识别 vue 命令的问题
|
Windows
使用PowerShell获取Windows当前锁屏壁纸
使用PowerShell获取Windows当前锁屏壁纸 如果原始图片丢了,用这段代码就可以提取当前锁屏壁纸了!
187 0
|
应用服务中间件 nginx Windows
Windows PowerShell 中启动 Nginx 报错解决方案
Windows PowerShell 中启动 Nginx 报错解决方案
Windows PowerShell 中启动 Nginx 报错解决方案
|
XML 监控 数据格式
利用powershell进行windows日志分析
0x00 前言   Windows 中提供了 2 个分析事件日志的 PowerShell cmdlet:一个是Get-WinEvent,超级强大,但使用起来比较麻烦;另一个是Get-EventLog,使得起来相当简单,可以实时筛选,接下来,我们利用PowerShell 来自动筛选 Windows 事件日志。
2532 0