Powershell函数参数不起作用

时间:2016-10-21 10:54:20

标签: function powershell csv parameters scripting

Powershell的新手(以及一般的脚本)。 这让我疯了。

尝试创建一个函数来编写Active Directory中某些管理工作的脚本,并且我已经陷入了第一道障碍......

$groups = import-csv C:\Users\administrator\Desktop\Powershell\Scripts\TraineeAdmin\groups.csv

以上代码在PowerShell中运行时效果很好

Function Trainee-Admin {
  param($groups = import-csv C:\Users\administrator\Desktop\Powershell\Scripts\TraineeAdmin\groups.csv)
    $groups
}

Trainee-Admin

函数参数中的相同命令不起作用。 我只是得到了这个错误:

在' ='之后缺少表达式。 在C:\ Users \ administrator \ Desktop \ Powershell \ Scripts \ TraineeAdmin \ TraineeAdmin.p s1:3 char:14 + $ groups =<<<< import-csv C:\ Users \ administrator \ Desktop \ Powershell \ Scrip TS \ TraineeAdmin \ groups.csv     + CategoryInfo:ParserError:(=:String)[],ParentContainsErrorRec ordException     + FullyQualifiedErrorId:MissingExpressionAfterToken

我猜我错过了一些非常简单的事情,我们将非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

为什么在硬编码值时在函数中使用参数?  试试这样:

Function Trainee-Admin {
  param($groups)
    write-host $groups
}
$groups = import-csv -path "C:\Users\administrator\Desktop\Powershell\Scripts\TraineeAdmin\groups.csv"
Trainee-Admin -groups $groups