【问题标题】:Check if current script running directory is a defined folder检查当前脚本运行目录是否为已定义文件夹
【发布时间】:2022-01-27 20:57:05
【问题描述】:

我知道$PSScriptRoot 返回脚本运行的当前目录。 但是,即使脚本在定义的同一目录中运行,也无法将其与 if 语句一起使用。

if ($PSScriptRoot -eq "~/.folderwithdotbeforeit/somefolder") {
Write-Host "True"
}

【问题讨论】:

  • 你为什么需要这个? $PSScriptRoot 将是被调用脚本的绝对路径

标签: powershell


【解决方案1】:

$PSScriptRoot 是一个字符串,而不是路径,因此您需要将它与包含您期望的绝对路径的字符串进行比较。在您的情况下,将 ~ 替换为您的主目录的绝对路径。

【讨论】:

  • 有道理,谢谢。但是放置绝对路径在其他机器上不起作用,因为每台机器的用户名都不同。有什么我可以做的吗?
  • 您可以使用具有用户名的变量来重建字符串,例如 $env:USERNAME。
猜你喜欢
  • 2022-11-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-13
  • 2017-10-05
  • 1970-01-01
  • 2021-09-22
  • 2014-07-15
  • 2010-09-10
相关资源
最近更新 更多