我有一些使用 WMI 查询的代码,但我遇到了一个问题,我使用的变量有一个 ' (单引号),这会导致代码出现故障
这是一个例子:
$path = "\\SERVER1\Mike O'Leary$"
$servername = $path.Split('\')[2].Split('\')[0]
$sharename = $path -replace ".*\\" -replace "'", "`'"
Get-WmiObject Win32_share -computer $servername -filter "name='$sharename'" | Select Name,Path
问题是共享名包含 ' 字符,因此会出错。没有 ' 的路径工作正常
我尝试使用上面看到的替换,但这没有帮助
我尝试了各种报价组合,但我无法正确使用,有人可以帮忙吗?
谢谢
本
您需要在 WQL 中转义该字符。 Ablog https://devblogs.microsoft.com/scripting/how-can-i-connect-to-a-folder-when-theres-an-apostrophe-in-the-folder-name/这涉及到你可以用反斜杠转义它。
$sharename = $path -replace ".*\\" -replace "'", "\'"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)