【发布时间】:2018-06-26 01:49:22
【问题描述】:
我想根据变量检查一个文件夹是否存在:
$folderdate = (Get-Date -Format "yyyyMMdd")
$foldername = "C:\Scripts\temp\$folderdate"
$path = $foldername
if (!(Test-Path $path)) {
$wshell = New-Object -ComObject WScript.Shell
$wshell.Popup("No folder :/ ")
exit
}
每次我运行脚本时,它都会丢弃自定义错误消息“无文件夹:/”,即使它存在。
如果我尝试
$CheckFolder = Test-Path "C:\Scripts\temp\Folder"
if ($CheckFolder) {
continue
} else {
$wshell = New-Object -ComObject WScript.Shell
$wshell.Popup("No folder :/ ")
exit
}
它工作正常。我也尝试不使用$,并且脚本具有相同的行为。
我试过$path = "C:\Scripts\temp\$foldername" 但这会掉一个
【问题讨论】:
-
您的代码对我来说很好用。您确定文件夹的完整路径正确并且您可以访问它吗?
-
是的,路径是正确的,我想知道第一个代码是如何为你工作的
-
仍然有效。我将您的代码完全复制到 PS1 文件中,然后创建了一个适当的文件夹。当文件夹在那里时我没有输出,当我删除它时会弹出一个弹出窗口,这似乎是预期的行为。可能是权限、PSVersions、主机环境等问题。
标签: powershell powershell-2.0 powershell-3.0