使用脚本A中的所有变量启动脚本B.

时间:2012-01-25 20:30:40

标签: powershell

我写了一个PowerShell脚本,我每天都会运行几次。手动执行脚本(从Powergui或shell中)是一件苦差事,所以我想创建一个前端,提示我输入变量。我发现Primalforms可以为我提供预先填充的字段,可以根据需要进行调整。

我的问题是我想创建一个gui并将所有变量传递给我的外部脚本(此脚本已经编写,不会成为Primalforms项目的一部分)。 我该怎么做?或者我应该手动传递变量?我该怎么办? (我认为这不是特定于Primalforms的。我宁愿用另一个脚本作为输入来执行带有变量的脚本。)

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:3)

使用splatting。在哈希表中收集参数的所有值(键名匹配参数名称),并从表单中相应的文本域中为每个名称指定参数的值。然后将哈希表传递给脚本B.以下假设您有两个文本字段,其名称为:filter和path。

## scriptA ##

$params = @{
    path=$path.text
    filter=$filter.text
}

D:\Scripts\scriptB.ps1 @params