【问题标题】:Pass an array to a PowerShell script as separate arguments将数组作为单独的参数传递给 PowerShell 脚本
【发布时间】:2013-10-15 15:35:42
【问题描述】:

我认为这很简单,但我被卡住了。

Script1.ps1 包含:

$params = "abc", "def"
Script2 $params

Script2.ps1 包含:

Args.Count

这当然会为 Script2 接收的单个数组参数输出“1”。

我想找到一种方法将 $params 不作为单个数组传递,而是作为两个单独的参数传递——以便 Script2 输出“2”作为计数,而 args[0] 是“abc”,而 args[1]是“定义”。

我尝试了所有不同的方法来做到这一点,但我最终没有得到我想要的。

【问题讨论】:

    标签: arrays powershell arguments


    【解决方案1】:

    像这样:

    $params = "abc", "def"
    Script2 @params
    

    【讨论】:

    • 这种技术称为“喷溅”。
    • 谢谢。让我感到困惑的一件事是我刚刚注意到关于 $args 的事情。如果在脚本中包含表达式 $args.Count,它会打印正确的值。但是如果我在这个表达式上放一个断点并在命令窗口中输入 $args.Count,它总是显示“0”。
    猜你喜欢
    • 2021-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-17
    • 1970-01-01
    • 1970-01-01
    • 2011-08-01
    • 2015-06-07
    相关资源
    最近更新 更多