我想帮助撰写我的if
声明,我很难在网上找到我想做的信息。基本上我需要我的if语句来查看$file
是否位于指定位置(如果可能,可以是多个位置)。到目前为止,我有这个:
foreach ($file in $MyInvocation.MyCommand.Path) {
if ($file) { #I need this to search a specific directory or directories
}
}
答案 0 :(得分:1)
如果要查看是否存在某些内容,请尝试使用test-path
命令。这将返回一个true / false值,您可以将其插入后续的if
语句中并分别执行您想要的操作。
$fileTest = test-path [file path here]
if($fileTest -eq $true){
#what happens when the file exists
}
else{
#what happens when the file does not exist
}
答案 1 :(得分:0)
您也可以使用.NET方法:
if(![System.IO.File]::Exists($file)){
# File exists
}
答案 2 :(得分:0)
如果您只是想知道该文件是否存在于其中一个位置,请使用:
if( ( (test-path 'c:\testpath1\test.txt','c:\testpath2\test.txt') -eq $true).Count)
{
"File found!";
}
如果您想知道文件的位置,请分别为每个路径执行测试路径。
if( ( (test-path 'c:\testpath1\test.txt') -eq $true).Count)
{
"File found at testpath1!";
}
if( ( (test-path 'c:\testpath2\test.txt') -eq $true).Count)
{
"File found at testpath2!";
}