【问题标题】:PowerShell ConvertTo-SecureString SyntaxPowerShell ConvertTo-SecureString 语法
【发布时间】:2016-07-27 02:21:38
【问题描述】:

我在理解 ConvertTo-SecureString cmdlet 的语法时遇到了问题。 从帮助: ConvertTo-SecureString [-String] <String> [[-AsPlainText]] [[-Force]] [<CommonParameters>]。 单方括号的意思是:一个可选参数,对吧? -AsPlainText 和 -Force 周围的方括号? 谢谢你的帮助 普克洛特阿维尼翁

【问题讨论】:

    标签: powershell syntax


    【解决方案1】:

    这意味着AsPlainTextForce 是可选的位置开关参数。所以你可以这样称呼它:

    ConvertTo-SecureString 'Password' -AsPlainText -Force
    

    像这样:

    ConvertTo-SecureString 'Password' $true $true
    

    或者像这样:

    ConvertTo-SecureString ${Value from ConvertFrom-SecureString command}
    

    强制命名参数的参数定义如下所示:

    -ParameterName <ParameterType>
    

    如果参数是可选的,则在其周围添加方括号:

    [-ParameterName <ParameterType>]
    

    如果参数是位置参数(参数名称可选),则在参数名称周围添加方括号:

    [-ParameterName] <ParameterType>
    

    如果参数是开关参数,则删除&lt;ParameterType&gt;部分:

    -ParameterName
    

    所以,当你有可选的位置开关参数时,它会是这样的(两个方括号,没有&lt;ParameterType&gt; 部分):

    [[-ParameterName]]
    

    碰巧强制位置开关参数和可选命名开关参数看起来都像:

    [-ParameterName]
    

    【讨论】:

    • 您好 PetSerAl,感谢您的回答。现在我知道了。问候 Purclot
    • 太棒了!我在哪里可以找到这样的解释?我总是首先尝试使用 PS 帮助,但这次很难掌握它......
    • @Purclot 你可以使用Get-Help about_Command_Syntax
    【解决方案2】:

    不,你错了。 [-String] &lt;String&gt; 不是可选参数,而是必需参数。 [-AsPlainText][-Force] 都是可选参数。

    请参阅文档ConvertTo-SecureString,特别是Parameters 部分,并在其中查看Required? 属性的值。

    【讨论】:

    • 嗨 Rahul,我问的是参数 -AsPlainText 和 -Force 周围的双括号的含义。我没有问 [-String] 我知道这不是可选的。那么:为什么要使用双括号,这是什么意思?普克洛特
    猜你喜欢
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 2011-07-15
    • 2017-10-03
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    相关资源
    最近更新 更多