Ярлыки не распознаны - PullRequest
0 голосов
/ 02 июля 2019

Я немного новичок в Power Shell.Я работаю над сценариями для автоматизации процесса сборки ПК.Общая схема процесса такова, что результирующая программа при первоначальном запуске запрашивает у пользователя некоторые данные, сохраняет эти данные в реестре для последующего извлечения и затем выполняет свои задачи.Он переименовывает машину, присоединяет ее к домену и выполняет другие основные настройки.Из-за перезагрузок, необходимых для переименования и присоединения к домену, я использую значение состояния в реестре, которое читается при запуске программы.Я использую переключатель, чтобы перейти к соответствующей метке в сценарии, в зависимости от стадии.Я также использую метки, где я проверяю пользовательский ввод.Здесь я сталкиваюсь с проблемами - ярлыки выдают ошибки.

Я посмотрел несколько сайтов о ярлыках, и, основываясь на том, что я вижу, я их исправляю - если я что-то не понял (чтовсегда есть возможность).Я сделал следующее:

:Label
<code goes here>

:Label
    {
    <code goes here>
    }

:Label <code goes here>

Все они ведут себя одинаково.

Это пример кода, который использует метки и выдает ошибки (более поздние части даже не выполняются в этомточка).Это часть пользовательского ввода.

# User Input
:UserInput Write-Output "Please provide the following information in order to properly image the system:"

    :Country $Country=Read-Host "Enter 2 character destination country code"
        IF(!$Country)
            {
            Write-Output "The destination country is required!"
            Break :Country
            }

Этот фрагмент кода генерирует следующие ошибки:

:UserInput : The term ':UserInput' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or 
if a path was included, verify that the path is correct and try again.
At <sanitized for my protection>Kiosk_PC_Build_V0_1a.ps1:79 char:1
+ :UserInput Write-Output "Please provide the following information in  ...
+ ~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (:UserInput:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException


:Country : The term ':Country' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if 
a path was included, verify that the path is correct and try again.
At <sanitized for my protection>Kiosk_PC_Build_V0_1a.ps1:81 char:5
+     :Country $Country=Read-Host "Enter 2 character destination countr ...
+     ~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (:Country:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Я получаю ту же ошибку «Термин ....» длякаждая из перестановок, которые я использую.У меня такое ощущение, что мне не хватает чего-то простого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...