我想弄清楚我需要继续提示用户输入有效的UNC路径的循环。我将它设置为测试路径并输出到控制台,路径无效。但是,之后,它又回到了我的选择提示。我想要它,请求用户在进入下一步之前输入另一条有效路径。这是我的循环:Powershell:修复我的循环逻辑
do{
Write-Host ""
$pathPrompt = Write-Host "Please enter path to file/folder:" -ForegroundColor Cyan;
$path = Read-Host;
$test = Test-Path $path
if($test -eq $false){
Write-Host "ERROR! Invalid Path!" -ForegroundColor Red
}
}until($test -eq $true){
Write-Host ""
Write-Host "Getting ACL on"$path -ForegroundColor Green
Get-NTFSAccess -Path $path
}
我在想什么或不在这里做什么?
你写遗嘱循环什么,直到它得到一个有效的路径,然后获取路径,此时它会退出的NTFS访问信息。如果你想重新开始并寻求新的路径,你应该考虑将代码封装在一个循环中的可能性。我应该注意到,这里的代码强烈表明这是一个家庭作业问题,并且要求其他人为你做功课确实被认为是不好的形式。 –
如果不是作业,我向你保证。我正在研究一种可以获得NTFS烫发的工具,然后通过选择应用新的或删除旧的烫发。 – T4RH33L
您不需要在条件中添加$ test。直接使用'(Test-path $ path)'然后执行其他操作 –