主要的调用脚本定义了3个参数,我希望所有模块都可以使用它们,一种方法是使用全局脚本,但是看起来很糟糕。

我希望我们可以使用类似下面的方法来传递参数,但是不起作用

  import-module "$currentPath\ETLLib.psm1" $a $b $c

我的主要脚本是这样的:
$a
$b
$c
import-module "$currentPath\ETLLib.psm1" $a $b $c
import-module "$currentPath\Tranform.psm1"  $a $b $c

ETLLib.psm1
param($a $b $c)

Tranform.psm1
param($a $b $c)

最佳答案

应该使用ArgumentListImport-Module参数。

Test.psm1:

param($a, $b, $c)
Write-Host $a
Write-Host $b
Write-Host $c

使用ArgumentList导入:
Import-Module Test -ArgumentList arg1, arg2, arg3

输出:
arg1
arg2
arg3

09-07 08:45