Оператор Powershell Switch для установки нескольких переменных

Я нахожусь в процессе преобразования некоторого старого сценария VB в Powershell. Я пытаюсь использовать оператор Switch для установки нескольких переменных. Возможно ли это в Powershell? В VBS мой код выглядел бы примерно так:

Select Case ENV
    Case "DEV"
        : SRCDRV  = "\\Server1" _
        : DESTDRV = "\\Server1\Folder1\"

    Case "TEST"
        : SRCDRV  = "F:" _
        : DESTDRV = "\\Server1\Folder2\"

    Case "PROD"
        : SRCDRV  = "F:" _
        : DESTDRV = "\\Server2\Folder2\"
End Select

Я пробовал что-то подобное в PS, но, похоже, переменные не устанавливаются.

switch ($cENV) {
    DEV { 
        $SRCDRV = "\\Server1"
        $DSTDRV = "\\Server2\Folder1\"
        break     
    }
    TEST {
        $SRCDRV = "\\Server1"
        $DSTDRV = "\\Server2\Folder2\"
        break
     }
    PROD {
        $SRCDRV = "\\Server1"
        $DSTDRV = "\\Server2\Folder2\"
        break
     }
}

Когда я проверяю значение либо DESTDRV, либо SRCDRV, я получаю сообщение об ошибке :Невозможно получить переменную '$SRCDRV', поскольку она не была установлена. Любые идеи о том, что я делаю неправильно?

7
задан mack 30 July 2012 в 19:26
поделиться