我很喜歡函數如何大大減少Powershell腳本中的繁忙工作,並且爲我節省了大量冗餘編碼。但我現在有問題在Powershell字符串中調用一個聲明的函數(作爲使用'+'符號的串聯字符串的一部分),並且想知道是否有這樣的技巧。一些示例代碼:Powershell中的函數 - 可以在字符串中調用它們嗎?
#this function takes input and either returns the input as the value, or returns
placeholder text as the value
function val ($valinput)
{ if ($valinput)
{return $valinput}
else
{$valinput = "No Results!"; return $valinput}
}
如果我致電該行的開頭或者函數本身:
val("yo!")
運行良好。但是,如果我試圖來連接它作爲一個字符串的一部分,例如:
"The results of the tests are: " + val($results)
PowerShell的似乎有執行功能有問題,我 得到「你必須提供在右手值表達式'+'操作符' '。和'表達式中的意外標記'val'或 聲明。'錯誤。
有沒有辦法在連接字符串中正確調用函數?我知道我可以將函數的結果推送到另一個變量,並將結果變量作爲字符串的一部分進行連接,但每次我調用此函數時都會很麻煩。提前致謝...!
想我可能已經偶然發現的老把戲: 「測試的結果是:」 + $(VAL($結果)) 似乎工作。我會留下任何證實這是做到這一點的方式。 – KTM