2017-01-30 8 views
-1

У меня возникла проблема с переменной PowerShell.Получите значение и используйте это значение для сравнения

Мой сценарий,

  • Внутри функции, я объявляю переменную $a, чем в коммутаторе, я получаю значение и сохранить это в переменной $a.

  • Теперь в другом переключателе в этой функции, я хочу сравнить $a. Но там $a возвращает null.

Пример кода приведен ниже:

function fun 
{ 

    [CmdletBinding()] 
    Param (
    [Parameter(Mandatory = $true, Position = 0)] 
    [ValidateNotNullOrEmpty()] 
    $param  
    ) 

    $Get_OldData = " " #declare variable 

    switch ($param){ 

     'param_001' { 
      $Get_OldData = "test data returned" 
     } 

     Default { 
      $Get_OldData = "test data returned" 
     } 
    } 


    switch ($param){ 

     'param_001' { 
      $New_Data = "New Data" 

      #problem is here, can not compare $Get-OldData returns null here 
      #though data is assigned 

      if ($New_Data -eq $Get_OldData){ 
       #logic goes here 
      } 
     } 
     Default { 
      $New_Data = "New Data" 
     } 
    } 
} 

Что такое решение этой проблемы?

+0

Вы уверены, что в '$ New-Data'? Похоже, что вместо тире следует использовать подчеркивание. – vonPryz

+0

@vonPryz Я только что сделал ошибку ввода –

ответ

1

У вас есть несколько вопросов с вашим кодом.

Основная проблема, вероятно, в том, что вы используете $param в своем коммутаторе, который не был установлен. То же самое относится к $Fetch. Еще одна проблема заключается в том, что ваша переменная $New-Data содержит дефис, который вы либо должны заменить на знак подчеркивания или объемный с фигурными скобками как ${New-Data}.

Кроме того, // не вводит комментарий, вы должны использовать хеш #.

+0

спасибо, но $ param установлен правильно и $ New-Data - это $ New_Data, которая является ошибкой typo –

+0

где вы задаете '$ param' и' $ Fetch'? –

+0

На самом деле, эта функция имеет параметр, и через это пропускается $ param .... Я не добавляю это в свой код для сохранения time.same для $ fetch –

 Смежные вопросы

  • Нет связанных вопросов^_^