为什么在运行Powershell命令时此Powershell参数会损坏?

为什么在运行Powershell命令时此Powershell参数会损坏?,powershell,Powershell,当我运行powershell命令时,我的一个参数被另一个arg值损坏。为什么?这看起来很简单。。但它不起作用:( 被破坏的示例:$apiKey应为null或空。非True=>&.\foo.ps1'-version 123-nuget aaaa-feedSource bbbbbb-clean True 正确示例:$apiKey显示XXX=>&.\foo.ps1'-version 123-nuget aaaa-feedSource bbbbbb-clean True-apiKey XXX 作为旁注,

当我运行powershell命令时,我的一个参数被另一个arg值损坏。为什么?这看起来很简单。。但它不起作用:(

被破坏的示例:
$apiKey
应为null或空。非
True
=>
&.\foo.ps1'-version 123-nuget aaaa-feedSource bbbbbb-clean True

正确示例:
$apiKey
显示
XXX
=>
&.\foo.ps1'-version 123-nuget aaaa-feedSource bbbbbb-clean True-apiKey XXX


作为旁注,当我使用Windows Powershell ISE时,
-apiKey
arg选项不会显示在自动完成下拉框中…??相关的开关类型通常不接受任何参数,因此
True
会传递到下一个可用参数,即
-apiKey

如果需要将值传递给开关参数,则如下所示:

-Clean:$someBoolVariable

您指定了
-Version
,并且
-Help
参数具有默认值,因此下一个可用参数是
-ApiKey

开关类型通常不接受任何参数,因此
True
将传递到下一个可用参数
-ApiKey

如果需要将值传递给开关参数,则如下所示:

-Clean:$someBoolVariable

您指定了
-Version
,并且
-Help
参数具有默认值,因此下一个可用参数是
-ApiKey

开关类型通常不接受任何参数,因此
True
将传递到下一个可用参数
-ApiKey

如果需要将值传递给开关参数,则如下所示:

-Clean:$someBoolVariable

您指定了
-Version
,并且
-Help
参数具有默认值,因此下一个可用参数是
-ApiKey

开关类型通常不接受任何参数,因此
True
将传递到下一个可用参数
-ApiKey

如果需要将值传递给开关参数,则如下所示:

-Clean:$someBoolVariable

您指定了
-Version
,并且
-Help
参数具有默认值,因此下一个可用参数是
-ApiKey

,以便将显式值绑定到开关参数(例如
-clean
),您需要
-Clean:$true
-否则,PowerShell将把字符串
true
解释为它可能匹配的任何参数的位置参数,以便将显式值绑定到开关参数(例如
-Clean
),您需要
-Clean:$true
-否则,PowerShell将把字符串
true
解释为它可能匹配的任何参数的位置参数,以便将显式值绑定到开关参数(例如
-Clean
),您需要
-Clean:$true
-否则,PowerShell将把字符串
true
解释为它可能匹配的任何参数的位置参数,以便将显式值绑定到开关参数(例如
-Clean
),您需要
-Clean:$true
-否则,PowerShell将把字符串
true
解释为它可能匹配的任何参数的位置参数wow-这是不知道的(显然)!ta!还有@keithhill--我如何在参数中使用switch语句?或者我不应该这样做吗?对于参数,
true | false
,是否有更好的变量类型?首先,您不需要初始化switch参数。默认情况下,它是
not present
或者$false(除非有人指定它,例如-Clean)。如果要将开关值从一个函数转发到另一个函数,则可以执行以下操作:
-cleannerland:$clean
,其中$cleannerland和$clean都是switch类型的参数。啊!我自己刚刚测试过!!!所以
开关
意味着我不需要为参数传递值。。参数定义它是真的!!!!所以我被拒绝了以两种方式错误使用switch arg..这导致了变量损坏。啊!哇!assplosion by me://Pure.Krome我会说只需指定开关参数
-Clean
而不带任何参数即可将其定义为$true。但是,是的,我认为您已经得到了它。:-)哇-从未知道(显然)!助教!还有@keithhill——如何在参数中使用switch语句?或者我不应该那样做?对于参数,
true | false
,是否有更好的变量类型?首先,不需要初始化开关参数。默认情况下,它是
不存在
或$false(除非有人指定它,例如-Clean)。如果要将开关值从一个函数转发到另一个函数,则可以执行以下操作:
-cleaniner:$clean
,其中$cleaniner和$clean都是switch.AH类型的参数!我只是自己测试了一下!!!因此,
开关
意味着我不需要为参数传递值。。这个论点定义了这是真的!!!!所以我在两个方面错误地使用了开关arg。。这导致了变量损坏。啊!!哇!assplosion by me://@Pure.Krome我想说,只需指定开关参数
-Clean
,而不带任何参数,即可将其定义为$true。但是,是的,我想你明白了。:-)哇-从来都不知道(显然)!助教!还有@keithhill——如何在参数中使用switch语句?或者我不应该那样做?对于参数,
true | false
,是否有更好的变量类型?首先,不需要初始化开关参数。默认情况下,它是
不存在
或$false(除非有人指定它,例如-Clean)。如果要将开关值从一个函数转发到另一个函数,则可以执行以下操作:
-cleaniner:$clean
,其中$cleaniner和$clean都是switch.AH类型的参数!我只是自己测试了一下!!!所以一个
开关
意味着我