powershell更改用户信息

Powershell的AD相关的命令灰常好用,豆子今天早上从HR那里拿了一份名单,需要更新所有AD用户的职位和部门信息。这个名单有上千人,肯定不能手动修改,一个简单几行的脚本就可以迅速解决。基本方法是可以通过get-ADuser搜索用户,然后使用 set-ADuser这个命令修改就行了。


名单格式如下: HR的代码,名字,姓,加入日期,职位,部门等等。由于鬼佬习惯结婚之后改名字,所有直接通过displayname 搜索很多人是找不到的。不过SamaccountName一般不会变,公司的命名方式是第一个名字的首字母+最后一个名字( First intial+ Last Name)。


wKiom1U5e5KyG9gzAALpk1mNVis542.jpg


如何改成这个SamaccountName呢,很简单,利用split函数分开重组一下就行了


比如:

$a=get-content 'c:\employee.csv'
foreach ($b in $a){
    $c=$b.split(",")
    $init=$c[1][0]
    $lastname=$c[2]
    $shortnamae=$init+$lastname
}


获得SamaccountName之后,那就很简单了,在foreach循环里面,利用get-ADuser搜索,然后set-ADuser修改就行了。可以写成一行,通过管道传输,也可以分开写。


比如:

$user=get-ADuser $shortname
if ($user -eq $null) {  $b >> c:/temp/error.csv }
else
{
    $user.samaccountname
    set-aduser $user.samaccountname -replace @{title=$c[4];department-$c[5]}
}


这样就能修改了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值