2014-10-08 54 views
0

嗨我有一个脚本,如果我写“写主机”将部分工作,但在将信息导出到文本文件时完全不起作用。我想查找用户标识的描述,名称,显示名称和管理器。请帮我理解它为什么不起作用。拉活动目录用户信息

Import-Module ActiveDirectory 

$document = "C:\Temp\ADupdate yyyy.txt" 

Clear-Content $document 

<# 
-ne = not equal CN=xxpc37254,OU=Standard,OU=Users,OU=Corporate,DC=we,DC=dirsrv 
-eq = equal 
-lt = less than 
-gt = greater than 
-ge = greater than or qual to 
-le = less than or equal to 
#> 

$Header = ` 
"User ID" + "|" + ` 
"Display Name" + "|" + ` 
Description" + "|" + ` 
"ID Owner" + "|" + ` 
"ID Owner Name" 


#Write out the header 
$Header | Out-File $document -Append 

#$Users = Get-ADUser -Filter {name -like "xxpc*" -or name -like "xxmd*"} - SearchBase "OU=Corporate,DC=we,DC=dirsrv,DC=com" -Properties name, displayname, description, manager 
$Users = Get-ADUser -filter {name -like "xxpc*" -or name -like "xxmd*"} -Properties name, displayname, description, manager 


foreach ($User in $Users) 
{ 
#manager missing 
if ($Users.Manager -eq $null) { 
    $owner = "MISSING" 
    $ownerid = "MISSING" 
    $ownername = "MISSING" 

} else { 
#grab the manager's name, surname, and department 
    $owner = Get-ADUser ($userid.Manager) -Properties GivenName, Surname, Department 
    $ownerid = $owner.Name 
    $ownername = $owner.Surname + "." + $owner.GivenName 
} 

$listing = ` 
$Users.Name + "|" + ` 
$Users.DisplayName + "|" + ` 
$Users.Description + "|" + ` 
$ownerid + "|" + ` 
$ownername 

$listing | Out-File $document -Append 
+0

它为什么不起作用? – kkuilla 2014-10-08 12:51:11

+0

因此,我将{name-like“xxpc *”或名称“xxmd *”}更改为“xxpc *”和“xxmb *”,并且与写入主机配合使用。仍然不输出到文本文件:/ – narue1992 2014-10-08 12:56:30

+0

文本文件只显示标头 – narue1992 2014-10-08 12:57:02

回答

1

好的。它不工作的原因可能是因为foreach中的if语句是错误的。您应该在foreach中使用$ user,而不是像您在此使用的$用户。这就是说,您应该了解如何创建自定义对象,并获取所需的数据,创建自定义对象并将其写入管道。这样,您可以用很多不同的方式使用输出,无论是写入文本文件,csv文件,xml还是只写入屏幕。

+0

谢谢我将所有$ users.manager更改为$ user。 – narue1992 2014-10-08 12:59:23

+0

并将所有$列表更改为$ User。 ...它现在正常工作谢谢!...只是要弄清楚如何使这个问题作为“回答” – narue1992 2014-10-08 12:59:51

+0

@AlyssaCooke复选标记在适当答案旁边的向上/向下箭头下。 – Matt 2014-10-08 13:17:34