我正在運行Windows 2008 R2 Standard服務器我找到了一個Powershell命令,顯示將在30天內過期的所有用戶帳戶。添加更多詳細信息powershell命令輸出
Search-ADAccount -AccountExpiring -TimeSpan 30.00:00:00 | where {$_.ObjectClass -eq 'user'} | FT Name,ObjectClass -A
我想將用戶過期的日期添加到命令的輸出是否有可能嗎?
我正在運行Windows 2008 R2 Standard服務器我找到了一個Powershell命令,顯示將在30天內過期的所有用戶帳戶。添加更多詳細信息powershell命令輸出
Search-ADAccount -AccountExpiring -TimeSpan 30.00:00:00 | where {$_.ObjectClass -eq 'user'} | FT Name,ObjectClass -A
我想將用戶過期的日期添加到命令的輸出是否有可能嗎?
取代聲明要輸出的字段,將(現在)更改爲Select-Object *
以獲取所有字段。
Search-ADAccount -AccountExpiring -TimeSpan 30.00:00:00 |
Where-Object {$_.ObjectClass -eq 'user'} |
Select-Object * |
Format-Table -Autosize
我也擴大了aliases/abbreviated命令,並把每個管道部分放在一個新行。
一旦你可以看到所有可用的列,改變這一行...
Select-Object * |
...到
Select-Object FIELD1, FIELD2, FIELD3 |
...其中FIELD1-3
代表列你想看到的輸出。
,並獲得有關的Search-ADAccount
功能的幫助下,使用PowerShell的幫助命令,就像這樣:
Get-Help Search-ADAccount -Full
您可能需要組合使用這與Get-ADUser
獲得帳戶過期細節。
它幾乎符合我的要求,似乎無法找到如何顯示用戶的期待日期。 –
使用PowerShell'Get-Help'命令,如下所示:'Get-Help Search-ADAccount -Full'。見上面的編輯。 – TechSpud
嘗試
Search-ADAccount -AccountExpiring -TimeSpan 30.00:00:00 | where {$_.ObjectClass -eq 'user'} | select -First 1 | Format-List * -Force
這應該給你返回的對象,然後您可以添加到您的FT
命令的所有屬性的列表,像
Search-ADAccount -AccountExpiring -TimeSpan 30.00:00:00 | where {$_.ObjectClass -eq 'user'} | FT Name,ObjectClass,AccountExpiring -A
它幾乎符合我的要求,似乎無法找到如何顯示用戶的期待日期。 –
您是否嘗試過管道的輸出將'Where-Object'改爲'Get-Member'而不是'Format-Table'?這會告訴你什麼信息是可用的。 –
傑夫,我是新來的,你能告訴我一個例子嗎? –
'Search-ADAccount -AccountExpiring -TimeSpan 30.00:00:00 | Where-Object {$ _。ObjectClass -eq'user'} | Get-Member'會顯示'Search-ADAccount'返回的對象中的信息。作爲一個簡單的例子,'Get-Process'返回'System.Diagnostics.Process'類型的對象;如果我在計算機上選擇一個進程並將其傳遞給Get-Member'Get-Process -Name CCMExec | Get-Member'我將得到一個System.Diagnostic.Process類型的對象支持的屬性和方法列表。這裏粘貼太多了;對於ActiveDirectory對象也會有很多。 –