Get-Aduser and Foreach grab the last 4 characters of their telephone and lync attribute and match them


hi all,

i have script kindly provided on forums while ago queries user attributes using array:

$aduser = get-aduser -filter { (title -notlike "pharm*" ) -and (title -notlike "lab*" ) -and (samaccountname -notlike "*train*") -and (officephone -notlike "111-111-1111") } -properties * -searchbase "ou=my,ou=crazy,dc=domain,dc=org"
$mycol = @()
foreach ($user in $aduser)
{
$myusers = new-object system.object
$myusers | add-member -membertype noteproperty -name samaccountname -value $user.samaccountname
$myusers | add-member -membertype noteproperty -name lastname -value $user.sn
$myusers | add-member -membertype noteproperty -name firstname -value $user.givenname
$myusers | add-member -membertype noteproperty -name displayname -value $user.displayname
$myusers | add-member -membertype noteproperty -name phonenumber -value $user.telephonenumber
$myusers | add-member -membertype noteproperty -name employeestatus -value $user.comment
$mycol += $myusers
}
$mycol | export-csv c:\adminscripts\userexport.csv -notypeinformation

i'd alter can grab last 4 characters of 2 attributes - "telephonenumber" , "msrtcsip-line" , export not match.

i'm bit of noob, took me while figure out how grab last 4 characters:

get-aduser hansolo -properties * | foreach {$_.telephonenumber.tostring().substring($_.telephonenumber.length -4,4)}

get-aduser hansolo -properties * | foreach {$_."msrtcsip-line".tostring().substring($_."msrtcsip-line".length -4,4)}

any ideas on how can use cool script first mentioned?  tried modifying i'd last 4 characters of telephonenumber, guess don't it.

in addition, if have ideas on best way match on shortened telephonenumber , msrtcsip-line, awesome.

continuing read "powershell in month of lunches"...

thank time,

mr mister

hi,

how change

$myusers | add-member -membertype noteproperty -name phonenumber -value $user.telephonenumber

to

$myusers | add-member -membertype noteproperty -name phonenumber -value ($user.telephonenumber).substring($_.telephonenumber.length -4,4)

regards,

yan li


cataleya li
technet community support



Windows Server  >  Windows PowerShell



Comments

Popular posts from this blog

Edit Group Policy

Hyper-V VM not reaching OS 'Logon' screen

DNS question...