РАЗДЕЛ
    about_Variables

КРАТКОЕ ОПИСАНИЕ
    Описание хранения переменными значений, используемых в Windows 
    PowerShell.  

ПОЛНОЕ ОПИСАНИЕ
    Переменная - это единица памяти, в которой хранятся значения. В 
    Windows PowerShell переменные представлены строками текста с 
    одним словом, которые начинаются со знака доллара ($), например 
    $a, $process и $my_var.

    В Windows PowerShell несколько разных типов переменных.

    -- Созданные пользователем переменные: эти переменные создаются и 
       поддерживаются пользователем. По умолчанию переменные, 
       создаваемые в командной строке Windows PowerShell, существуют, 
       только пока открыто окно Windows PowerShell, и теряются после 
       того, как окно закрывается. Для сохранения переменную следует  
       добавить в профиль Windows PowerShell. Переменные можно 
       создавать в скриптах в глобальных или локальных областях или в
       областях скриптов.  

    -- Автоматические переменные: автоматические переменные хранят 
       состояние Windows PowerShell. Эти переменные создаются Windows 
       PowerShell, и Windows PowerShell изменяет их значения по мере 
       необходимости для поддержания их точности. Пользователи не 
       могут изменять значения этих переменных. Например, переменная 
       $PSHome содержит путь к каталогу установки Windows PowerShell. 
       Дополнительные сведения, список и описание автоматических 
       переменных см. в разделе about_Automatic_Variables.

    -- Привилегированные переменные: привилегированные переменные 
       хранят настройки пользователя для Windows PowerShell. Эти 
       переменные создаются оболочкой Windows PowerShell и 
       заполняются значениями по умолчанию. Пользователи могут 
       изменять значения этих переменных. Например, переменная 
       MaximumHistoryCount определяет максимальное число записей в 
       журнале сеанса. Дополнительные сведения, список и описание 
       привилегированных переменных см. в разделе about_Preference_Var
       iables.

    
 РАБОТА С ПЕРЕМЕННЫМИ

    Чтобы просмотреть список всех переменных в сессии Windows 
    PowerShell, наберите команду:

       get-variable

    Для отображения значения любой переменной введите имя переменной 
    после знака доллара ($). Windows PowerShell в ответ отобразит ее 
    значение.

       $<имя_переменной>

    Пример:

        PS> $pshome
        C:\Windows\System32\WindowsPowerShell\v1.0


    Для создания новой переменной или для изменения значения 
    переменной используйте инструкцию присваивания в следующем формате:

        $<переменная> = <значение>

    Пример:

        PS> $my-variable = 1, 2, 3

        или

        PS> $VerbosePreference = "Continue"

    Для получения объекта, представляющего переменную, используйте 
    команду Get-Variable, например:

        PS> get-variable pid


    Для использования переменной введите в команде или выражении имя 
    переменной, включая знак доллара ($). Если команда или выражение 
    не заключены в кавычки или заключены в двойные кавычки ("), 
    значение переменной используется в команде или выражении. Если 
    команда заключена в одиночные кавычки ('), в выражении 
    используется имя переменной.

    Например, первая команда находит значение переменной $profile, то 
    есть путь к файлу профиля пользователя Windows PowerShell. Вторая 
    команда открывает файл в Блокноте.

        PS> $profile
        C:\Documents and Settings\User01\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

        PS> Notepad $profile


    В переменной можно хранить любые типы объектов, включая целые 
    числа, строки, массивы и хэш-таблицы, объекты, представляющие 
    процессы, службы, журналы событий и компьютеры.  
  

  СОХРАНЕНИЕ ПЕРЕМЕННЫХ
      Создаваемые переменные доступны только во время сеанса, в 
      котором были созданы. Они пропадают при завершении сеанса.
     
      Для сохранения переменную следует добавить в профиль Windows PowerShell.      
      Переменные в профиле добавляются в каждый открываемый сеанс 
      Windows PowerShell.

      Например, чтобы изменить значение переменной $VerbosePreference 
      во всех сеансах Windows PowerShell, необходимо добавить в 
      профиль Windows PowerShell следующую команду.

	  $VerbosePreference = "Continue"

      Эту команду можно добавить в профиль, открыв файл профиля в 
      текстовом редакторе, например в Блокноте, или воспользовавшись 
      командой Add-Content, такой как следующая.

      Следующая команда добавляет новое значение переменой 
      $VerbosePreference в профиль CurrentUser,AllHosts.

	  add-content -path $profile.CurrentUserAllHosts -value '$VerbosePreference = "Continue"'

      Дополнительные сведения о профилях Windows PowerShell см в 
      разделе about_profiles.


 ИМЕНА ПЕРЕМЕННЫХ СО СПЕЦИАЛЬНЫМИ ЗНАКАМИ

    Чтобы оболочка Windows PowerShell интерпретировала имя переменной 
    буквально, можно использовать фигурные скобки. Это особенно 
    полезно при создании или обращении к имени переменной, 
    содержащему специальные знаки, например дефисы, точки, двоеточия 
    и скобки. 

    Для создания имени переменной, содержащего дефис, заключите его в 
    фигурные скобки. Следующая команда создает переменную "save-items".

        C:\PS> ${save-items} = "a", "b", "c"
        C:\PS>${save-items}
        a
        b
        c

    Для обращения к имени переменной, содержащему скобки, заключите 
    его в фигурные скобки. 

    Например, следующая команда возвращает дочерние элементы в 
    хранилищах каталогов в переменной среды "ProgramFiles(x86)".

        C:\PS> Get-childitem ${env:ProgramFiles(x86)}


    Для обращения к имени переменной, содержащему фигурные скобки, 
    заключите его в фигурные скобки и поставьте перед внутренними 
    фигурными скобкам escape-символ в виде обратного апострофа. 
    Например, для создания переменной "this{value}is" со значением 1 
    введите следующую команду: 

        C:\PS> ${this`{value`}is} = 1
        C:\PS> ${this`{value`}is}
        1


 ДИСК VARIABLE:

     Windows PowerShell включает диск Variable:, который выглядит и 
     работает как диск файловой системы, но содержит переменные 
     текущего сеанса. 

     Чтобы перейти на диск variable, введите следующую команду:

        set-location variable:
        
         (или "cd variable:")

     
     На диске Variable можно с помощью командлета Get-ChildItem 
     вывести список элементов (переменных). Пример:

         get-childitem

         (или "dir" или "ls")
     
     Чтобы получить дополнительные сведения о диске Variable: и 
     поставщике Windows PowerShell Variable, введите следующую команду:

         get-help variable


СМ. ТАКЖЕ
    about_Automatic_Variables
    about_Environment_Variables
    about_Preference_Variables
    about_Scopes





Содержание