Powershell如何更新AD地址2行

时间:2016-05-24 20:24:27

标签: csv powershell

快乐的星期二,我有一个csv文件,其中有2个地址列,一个用于街道地址,另一个用于说套件,基本上是2行。这种语法似乎不是一种方法。有没有更好的办法? THX!

Set-ADUser -identity $User -Replace @{streetAddress = ("+$Row.'Location Address'+"`r`"+$Row.'Location Address Line 2'+"); l = $Row.'Location City'; postalcode = $Row.'Location Zip'}

1 个答案:

答案 0 :(得分:1)

这一行可能不符合你的要求。

"+$Row.'Location Address'+"`r`"+$Row.'Location Address Line 2'+"

看起来您想要从多个变量中构建一个字符串,但是您在开头忘记了",因此"+$Row.'Location Address'+"是一个字符串,然后`r`在...之外字符串,导致语法错误。

有三种方法可以从PowerShell中的变量构建字符串。第一个是我称之为JavaScript的方式,在你去的时候连接字符串。这是支持的,但不是真的推荐。

"" + $Row.'Location Address' + "`r`n" + $Row.'Location Address Line 2'

第二种是.NET方式,您可以使用格式字符串和-f运算符。

"{0}`r`n{1}" -f ($Row.'Location Address', $Row.'Location Address Line 2')

第三种是使用$(expr)语法

在字符串中包含PowerShell解析变量
"$($Row.'Location Address')`r`n$($Row.'Location Address Line 2')"