如何比较文件夹是否存在以及是否存在,请创建她

时间:2017-04-28 13:28:04

标签: powershell scripting powershell-v3.0 windows-scripting

我有以下问题,我需要创建一个脚本来比较目录是否存在,如果它不存在,则创建它。在linux shell中,我使用参数-F来检查目录是否存在。如何在PowerShell中进行测试?

在Linux shell中:

DIR=FOLDER

if [ -f $DIR ]
then
    echo "FOLDER EXIST";
else
    echo "FOLDER NOT EXIST";
    mkdir $DIR
fi

如何在Windows PowerShell中进行此比较?

$DIRE = "C:\DIRETORIO"

if ( -e $DIRE ) {
    echo "Directory Exists"
} else {
    md DIRETORIO
}

2 个答案:

答案 0 :(得分:9)

您还可以将New-Item cmdlet与force参数一起使用,甚至不必检查目录是否存在:

New-Item -Path C:\tmp\test\abc -ItemType Directory -Force

答案 1 :(得分:4)

根据评论,Test-Path是您应该用来检查文件或目录是否存在的PowerShell cmdlet:

$DIRE = "C:\DIRETORIO"

if ( Test-Path $DIRE ) {
    echo "Directory Exists"
} else {
    md DIRETORIO
}
  

Test-Path cmdlet确定路径的所有元素是否都是   存在。如果所有元素都存在则返回$ True,如果存在则返回$ False   失踪。它还可以判断路径语法是否有效以及是否有效   路径通向容器或终端或叶子元素。