检查Powershell中是否存在多个目录,然后执行命令

时间:2019-03-07 14:25:57

标签: windows powershell

我正在使用此命令删除两个不同目录中的多个文件:

     Remove-Item -path c:\tmp\folder1\*, c:\tmp\folder1\* -Force -Recurse

两个文件夹都包含一些我要删除的zip文件和子文件夹

在执行此命令之前,我需要检查那些文件夹(folder1和folder2)是否存在并且不为空。无法弄清楚:(

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

我建议使用命令“ test-path”,然后使用|。 (管道)输出一个true或false值,以继续执行用于删除目录的命令。

答案 1 :(得分:0)

如果要使用if检查多个条件,请-and返回结果:

if ((Test-Path 'C:\tmp\folder1\*') -and 
    (Test-Path 'C:\tmp\folder2\*') ){
    Remove-Item -path c:\tmp\folder1\*, c:\tmp\folder1\* -Force -Recurse
} else {
    "not all conditions met."
}

文件夹的显式Test-Path并不是必需的,因为它暗示了文件夹中的项目。