powershell
  • variables
  • 2017-08-25 66 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

    听起来你应该创建一个函数。 –

    相关问题