powershell
  • variables
  • 2017-08-25 65 views 1 likes 
    1

    我想設置一個變量以內聯方式使用,但它不像我預期的那樣工作。最終,我希望它運行的命令,只是使用一個變量來設置它,是使用PowerShell變量行

    '$Version = 'v14,11.253.0'.replace(",",".").replace("v","")' to get a output of '14.11.253.0' 
    

    爲什麼這不起作用?

    $Replace = '.replace(",",".").replace("v","")' 
    $Version = 'v14,11.253.0'$Replace 
    $Version 
    

    回答

    1

    每我的意見,這裏是如何使用一個功能,使這個代碼更具可重複性:由具有該功能接受

    ​​3210

    你也可以藉此遠一點(也許使它更可用)管道輸入,這樣就可以使用它像這樣:

    Function FixVersion { 
        Param (
         [Parameter(ValueFromPipeline)] 
         $Version 
        ) 
        $Version -replace ',','.' -replace 'v' 
    } 
    
    $Version = 'v14,11.253.0' | FixVersion 
    
    +1

    謝謝! –

    0

    這應該爲你工作:

    $Version = 'v14,11.253.0' -replace ',','.' -replace 'v' 
    

    不知道爲什麼你要存儲替換字符串變量的方法,但是你希望它不會循規蹈矩,因爲這是一個字符串。

    +0

    我需要改變與多行代碼不同的「替換」命令,所以我想改變它在一個位置(即設置變量),所以我可以使用它一遍又一遍,而不必不斷地改變幾十行代碼。 –

    +0

    聽起來你應該創建一個函數。 –

    相關問題