Gle*_*enn 4 powershell powershell-remoting
我正在尝试将多个csv导入的列表添加到远程执行的PS脚本中.当我使用以下命令仅传递一个列表时,它工作正常:
Invoke-Command -filepath $createSAPSPath -ConnectionUri $uri -Credential $credential -ArgumentList (,$accountsList)
Run Code Online (Sandbox Code Playgroud)
多个列表对象的正确语法是什么?我试过了:
Invoke-Command -filepath $createSAPSPath -ConnectionUri $uri -Credential $credential -ArgumentList (,$accountsList),(,$groupsList)
Run Code Online (Sandbox Code Playgroud)
但它似乎不起作用......
谢谢,
格伦
你必须意识到为什么你需要在第一种情况下使用一元逗号,以理解为什么在第二种情况下不需要它.
参数-ArgumentList采用Object[]参数类型.如果要传递单个集合,则需要阻止PowerShell将单个参数(恰好是集合)视为传递给此参数的参数集合.
如果您已经传递了某些集合(例如$AnyObject, $EvenCollection),无论单个对象的类型如何,PowerShell都会执行用户通常期望的操作:将第一个集合传递给第一个参数,将第二个集合传递给第二个参数.
总结一下:你应该能够像这样运行:
Invoke-Command -filepath $createSAPSPath -ConnectionUri $uri -Credential $credential -ArgumentList $accountsList, $groupList
Run Code Online (Sandbox Code Playgroud)
......并获得预期的结果.
| 归档时间: |
|
| 查看次数: |
52737 次 |
| 最近记录: |