PowerShell打印变量输出

时间:2017-10-23 14:49:05

标签: powershell active-directory

我正在尝试获取未在X天内登录的Active Directory用户列表,然后将其写入文本文件。我将它写入文本文件时遇到问题。这就是我所拥有的:

$date = Get-Date
$disable45 = (Get-ADUser -Filter * -Properties * -SearchBase "distinguished_name" | ? {
    ($_.distinguishedname -notlike 'Disabled') -or
    ($_.DistinguishedName -notlike "Service Accounts")
} | Where-Object {
    $_.LastLogonDate -le (Get-Date).AddDays(-90)
} | select SamAccountName,LastLogonDate,Enabled,distinguishedname) | Write-Host

Add-Content C:\users\user1\Desktop\disable.txt "$date`n`n$disable45`n`nThe End`n`n"

变量本身可以正常工作。 Add-Content部分正确附加到文件。但是$disable45变量的输出不在文件中。只有空格或空格“|”符号。我尝试使用“{”和“[”和“(”在禁用变量周围,但我仍然无法将其输出到文件中。

1 个答案:

答案 0 :(得分:0)

我解决了删除写主机的问题,首先将日期添加到文本文件中,然后执行以下操作:     foreach($ user in $ disable45){$ UserD = Get-ADUser $ user.SamAccountName Add-Content C:\ users \ user1 \ Desktop \ disable.txt" $ UserD`n" }