Powershell st用户登录到需要“注意”的系统。它是最后一个登录到系统的用户的SamAccountName。我把这个列表作为另一个程序的输出,该程序无法提供我想要的所有信息。这是最接近我预期的工作。唯一的问题是,一些SAMAccountName用于本地登录,而不是域登录
Powershell st用户登录到需要“注意”的系统。它是最后一个登录到系统的用户的SamAccountName。我把这个列表作为另一个程序的输出,该程序无法提供我想要的所有信息。这是最接近我预期的工作。唯一的问题是,一些SAMAccountName用于本地登录,而不是域登录,powershell,csv,active-directory,export-to-csv,Powershell,Csv,Active Directory,Export To Csv,st用户登录到需要“注意”的系统。它是最后一个登录到系统的用户的SamAccountName。我把这个列表作为另一个程序的输出,该程序无法提供我想要的所有信息。这是最接近我预期的工作。唯一的问题是,一些SAMAccountName用于本地登录,而不是域登录。当get aduser命令在AD[ADIdentityNotFoundException]中找不到本地登录名时,它正在当前对象的“上次登录”(samAccountName)单元格中写入以前用户的samAccountName。@Jarad我已更
st用户登录到需要“注意”的系统。它是最后一个登录到系统的用户的SamAccountName。我把这个列表作为另一个程序的输出,该程序无法提供我想要的所有信息。这是最接近我预期的工作。唯一的问题是,一些SAMAccountName用于本地登录,而不是域登录。当get aduser命令在AD[ADIdentityNotFoundException]中找不到本地登录名时,它正在当前对象的“上次登录”(samAccountName)单元格中写入以前用户的samAccountName。@Jarad我已更新代码以重置samAccountName
$samAccountName=“”
为了防止以前的用户详细信息被隐藏,DIT现在可以很好地工作了,非常感谢!我非常理解代码,但我会进行一些研究,以便更好地理解如何使用“pscustomobject”。好极了!这是最接近我预期的工作。唯一的问题是,一些SAMAccountName用于本地登录,而不是域登录。当get aduser命令在AD[ADIdentityNotFoundException]中找不到本地登录名时,它正在当前对象的“上次登录”(samAccountName)单元格中写入以前用户的samAccountName。@Jarad我已更新代码以重置samAccountName$samAccountName=“”
为了防止以前的用户详细信息被隐藏,DIT现在可以很好地工作了,非常感谢!我非常理解代码,但我会进行一些研究,以便更好地理解如何使用“pscustomobject”。好极了!
$userlist = Get-Content $home\Desktop\names.csv
ForEach ($user in $userlist) {
Get-ADUser $user -Properties DisplayName |
Select-Object Name,DisplayName |
Export-CSV $home\Desktop\new_names.csv -NoTypeInformation
}
$userlist = Import-Csv "$home\Desktop\names.csv"
ForEach ($user in $userlist) {
$SamID_User = $user.SamAccountName
# $DN_User = $user.DistinguishedName
$OU_User = $user.OU
#A Search by SamAccountName
$result = Get-ADUser -Filter { samaccountname -eq $SamID_User } -SearchBase $OU_User | # DisplayName property is returned by default by Get-ADUser and hence doesn't require explicit mention
Select-Object Name,DisplayName
$result | Export-CSV "$home\Desktop\new_names.csv" -NoTypeInformation -Append # Added -Append switch; works on PS v3.0 and later; with PS v2.0 -Append switch is not available with Export-Csv; With PS v2.0 you can use Out-File instead
#B Search by DistinguishedName
<#
$result = Get-ADUser -Filter { DistinguishedName -eq $DN_User } -SearchBase $OU_User |
Select-Object Name,DisplayName
$result | Export-CSV "$home\Desktop\new_names.csv" -NoTypeInformation -Append
#>
}
Import-CSV $home\Desktop\names.csv |
ForEach-Object {
$samAccountname = ""
$displayname = ""
$samAccountname = $_."last logon"
$machinename = $_.'machine name'
$displayname = (get-aduser $samaccountname -Properties displayname).displayname
$ou = $_.OU
[pscustomobject]@{
machineName=$machinename
displayname=$displayname
OU=$ou
samAccountname=$samAccountname
}
} |
select samAccountname ,machineName,displayname,ou |
Export-CSV new_names.csv -Append -NoTypeInformation