在AD

时间:2015-05-26 17:46:04

标签: powershell

我有一个包含几个用户的.csv文件,每个用户都有不同的描述。我正在尝试创建一个脚本来更新用户'描述与.csv文件中的内容。我已经搜索过,但一直找不到能够完成我需要它的脚本。有人可以看看我的剧本吗?我错了: 意外的令牌' in'在表达或陈述中。在行:6 char:35 意外的令牌' in'在表达或陈述中。在行:6 char:38

ipmo ac*
$file = c:\user_file.csv
$user = $_.samaccountname
$desc = $_.description

Import-csv $file | Foreach ($user in $file) {
@(Set-aduser -identity $($file.user) -description $($file.desc))
}

任何帮助都会受到赞赏,因为我一直试图这样做一个星期,我确定这很容易吗?

1 个答案:

答案 0 :(得分:1)

我会做这样的事情。

ipmo ac*
$file = "c:\user_file.csv"
Import-csv $file | ForEach-Object{
    Set-aduser -identity $_.samaccountname -description $_.description
}

这假设您的CSV包含名为samaccountnamedescription的列。

不确定您尝试使用$user$desc做什么,所以这些只是省略了。猜测它们实际上是空的,因为$_意味着在管道中使用。

您使用的ForEach并不意味着有管道输入。你拥有它的方式通常是独立的。所以我们将其切换到允许管道输入的ForEach-Object版本。