当我运行此代码的第二部分时,我遇到了一个问题,该代码循环并不断询问您要设置暂存的位置。我可以在TC,MonsterLock和Cyc之间进行选择,但是一旦我进入第二部分,无论我输入什么内容,它仍然会问我同样的事情。

我得到的循环看起来像这样

此脚本设置数据库暂存
设置要运行的位置
您输入了错误-ForgroundColor红色
您必须键入DATABASE1或DATABASE2或DATABASE3或DATABASE4或ALL
您键入DATABASE1
设置要运行的位置
您输入了错误-ForgroundColor红色
您必须键入DATABASE1或DATABASE2或DATABASE3或DATABASE4或ALL
您输入了DATABASE2
设置要运行的位置
您输入了错误-ForgroundColor红色
您必须键入DATABASE1或DATABASE2或DATABASE3或DATABASE4或ALL
您输入了DATABASE3
设置要运行的位置

write-host "This script sets up DATABASE Staging"
$ProductionDistro = Read-Host -Prompt "Which production do you `enter code here`want to run?(TC/MonsterLock/Cyc)"
While($ProductionDistro -notmatch "(TC|MonsterLock|Cyc)"){
    write-host "You have entered an error" -ForegroundColor Red
    write-host "You must type TC or MonsterLock or Cyc"
    write-host "you typed $ProductionDistro"
    write-host "This script sets up DATABASE Staging"
    $ProductionDistro = Read-Host -Prompt "Which production do you `enter code here`want to run?(TC/MonsterLock/Cyc)"
}

write-host "Sets up location you want to run staging"
        $ElementDistro = Read-Host -Prompt "Which Element do you want to run? (DATABASE1/DATABASE2/DATABASE3/DATABASE4/ALL)"
        While($ElementDitro -notmatch "(DATABASE1|DATABASE2|DATABASE3|DATABASE4|ALL)") {
            write-host "you have enterd an error" -ForgroundColor Red
            write-host "You must type DATABASE1 or DATABASE2 or DATABASE3 or DATABASE4 or ALL"
            write-host "you typed $ElementDistro"
            write-host "set location you want to run staging"
          $ElementDistro = Read-Host -Prompt "Which Element do you want to run? (DATABASE1/DATABASE2/DATABASE3/DATABASE4/ALL)"

最佳答案

这是一个错字。 While($ ElementDitro缺少s。

此外,-前景中应该有一个e。这可能是我的错,我想我在先前对您的其他问题的回答中提到了这一点。

08-05 08:55