簡體   English   中英

PowerShell ISE中的Powershell函數行為

[英]Powershell function behavior in PowerShell ISE

我正在嘗試運行一些非常基本的powershell代碼:一個對兩個輸入參數進行測試的函數:$ Location和$ Algo

這是我的簡化代碼:

Function Get-Test ($Location,$Algo)
{
# Test if the function is called with input parameters or requests default parameters
echo "INPUT"
echo $Location
echo $Algo
  if ([string]::IsNullOrEmpty($Algo))
  {
  $UR2 = "UR2 DEFAUT"
  $UR4 = "UR4 DEFAUT"
  }
  Else
  {
  $UR2 = $Location
  $UR4 = $Aglo
  }
  echo "OUTPUT"
  echo $UR2
  echo $UR4
  echo "Why $ UR4 is EMPTY WHEN THERE IS NO DEFAULT VALUE ???"
}

當我運行此代碼並在$ Algo上輸入時,我的第一個“ echo $ Algo”是我所期望的,但是第二個$ UR4回顯為空。

我可能想念一些愚蠢的東西...

菲利普

您的功能對我來說不錯。

但是在PowerShell中,調用函數的變量定界符是whithepace而不是逗號。 也許那就是你所缺少的。

像這樣調用函數:

Get-Test "MyLocation" "MyAlgo"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM