windows - 反引号放置为何重要?

标签 windows powershell

我试图更好地了解反引号在PowerShell中的工作方式。这可以工作并执行ipconfig命令:

$a = "ipc"
$b = "onf`ig"


iex $a$b
但是,如果将反引号向左移动一个字符,则在“f”之前,该命令将中断...
$a = "ipc"
$b = "on`fig"


iex $a$b
另一个例子:
who`ami
如果反引号在其他任何地方,whoami命令将正常工作。中间有一个倒钩,它会折断。
这里发生了什么事?为什么反引号的位置如此重要?

最佳答案

这些是因为powershell中有一些特殊字符。
在powershell中,有些特殊字符不在标准字符集中。它们以反勾号开始以显示特殊含义。他们是:
`0空
警报
`b退格键
逃生
`f换页
`n新行
`r回车
`t水平标签
u {x} Unicode转义序列
`v垂直标签
在这里,当您使用反引号转义“a”时,
表示警报powershell(whoami),当您使用反引号转义“f”时表示换页(ipconfig),因此两个命令都将中断。
并且当您转义其他字符时,命令不会中断,因为字符不会呈现特殊含义。

关于windows - 反引号放置为何重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63405120/

相关文章:

git - 如何在 PowerShell 提示符中显示当前的 git 分支名称?

c# - 像 alt-tab 一样枚举窗口

windows - 如何从不同的线程执行 SendMessage?

powershell - Powershell开关一对多关联

windows - 在 Windows 中,如何将已替换为十六进制 ASCII 的原始字符恢复到 csv 文件中?

azure - 如何获取从 Azure Devops/VSTS/TFS 中的 "Windows Machine File Copy"任务复制的文件总数?

JAVA 从 linux 执行 powershell 脚本

python - 没有支持的颜色终端库 Python/Jupyter

java - Windows 保留名称 "c​on"解决方法/hack

vb.net - 如何获得三字母母语名称?