Powershell 转义字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Powershell 转义字符相关的知识,希望对你有一定的参考价值。

今天聊一聊关于Powershell的转义字符

什么是转义字符,转义字符在键盘的左上角和~是一个键,使用转义字符后某些有特殊意义的字符变成普通的字符,或者对某些字符使用转义字符后变成了另外的功能字符
例如:

PS C:Windowssystem32> $a=8

PS C:Windowssystem32> $b="$a is 8"

PS C:Windowssystem32> $b
8 is 8

正常情况下,双引号中的$符号会识别为变量,但是如果我们在$符号前加入转义字符,那么$就不会再被识别成变量,而是一个普通字符,如下:

PS C:Windowssystem32> $a=8

PS C:Windowssystem32> $b="`$a is 8"

PS C:Windowssystem32> $b
$a is 8

此外转义字符还经常用于代码换行,如果当一行代码太长了,超过了屏幕的显示范围,那么我们可以通过转义字符进行换行,而不影响代码的连续性

Get-WmiObject -Class win32_bios `
| select serialnumber

serialnumber
------------
2VBCQF2

如果我们没有在bios后面加入转义字符,那么这个代码会报错

PS C:Windowssystem32> Get-WmiObject -Class win32_bios 
| select serialnumber
所在位置 行:2 字符: 1
+ | select serialnumber
+ ~
不允许使用空管道元素。
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : EmptyPipeElement

转义字符的另一种用法,是在某些字符签名加入转义符,该字符会转换成某些功能,而不是原本的字符含义,具体有以下几种
0 表示空<br/>a 发出报警音
b 回退一个字符<br/>f 换页,打印字符,指示在当前字符的下一页继续打印
n 换行<br/>r 回车,会删除该字符之前的整行内容
t 水平Tab<br/>v 垂直tab, 光标前进到下一个垂直制表位并从该处开始写入后面的所有输出。该字符仅影响打印的文档,不影响屏幕输出

以上是关于Powershell 转义字符的主要内容,如果未能解决你的问题,请参考以下文章

powershell 使用PowerShell转义URI字符串

VBScript调用powershell,转义字符[重复]

如何从PowerShell命令行转义管道字符以传递到非PowerShell命令

在 Rails 上为连接、限制、选择等(不是条件)的 SQL 片段安全地转义字符串

jquery 冒号转义 为啥双斜杠

Vscode在使用变量之前转义斜杠