如何在 PowerShell 中比较某个位置与主文件夹

Bas*_*hir 2 windows shell powershell

我尝试在特定位置运行脚本,但无法运行,并且我意识到这与以下代码有关,我认为该代码应该返回 True,但如果您位于 Windows 10 的主文件夹中,它实际上返回 False。

$loc=Get-Location 
$loc -eq $HOME  =>> Should return True but it is not.
Run Code Online (Sandbox Code Playgroud)

因此,任何评论或答案都值得赞赏。

Mat*_*sen 5

Get-Location返回一个位置对象,而$home只是一个字符串。要么转换$loc为字符串,要么$home与其Path属性进行比较:

$loc.Path -eq $home
# or 
"$loc" -eq $home
Run Code Online (Sandbox Code Playgroud)

由于 PowerShell 的-eq运算符根据左侧操作数的类型进行行为,因此您也可以翻转两个操作数,它也能工作:

$home -eq $loc
Run Code Online (Sandbox Code Playgroud)