Powershell 仅从LastLogonData提取日期部分
我希望能够从Get ADUser命令的输出中隔离日期:Powershell 仅从LastLogonData提取日期部分,powershell,automation,Powershell,Automation,我希望能够从Get ADUser命令的输出中隔离日期: Get-ADUser -identity johnd -properties LastLogonDate | Select-Object name, LastLogonDate 其结果是: name LastLogonDate ----
Get-ADUser -identity johnd -properties LastLogonDate | Select-Object name, LastLogonDate
其结果是:
name LastLogonDate
---- -------------
John Doe 3/21/2016 10:01:36 AM
我希望能够删除所有文本,只留下日期:
3/21/2016
我已尝试将此拆分筛选器添加到上述命令的末尾,这类似于unix中的awk。(#2关闭,仅举个例子)
导致此错误的原因:
[Microsoft.ActiveDirectory.Management.ADUser] doesn't contain a method named 'Split'
你会使用变量吗?如果是,
PS>$hi=Get-ADuser -identity johnd -properties LastLogonDate|select-object name,LastLogonDate
PS>$hi.LastLogonDate.ToShortDateString()
3/21/2016
PS>$hi.name
John Doe
你会使用变量吗?如果是,
PS>$hi=Get-ADuser -identity johnd -properties LastLogonDate|select-object name,LastLogonDate
PS>$hi.LastLogonDate.ToShortDateString()
3/21/2016
PS>$hi.name
John Doe
该cmdlet的结果是一个具有一组属性的对象。您在表格格式中看到的输出不是对象中所包含的内容;这是它的一种显示形式 因此,要首先仅获取日期对象,您可以修改
Select object
调用(该调用已经在削减属性),如下所示:
$lastLogon = Get-ADUser -identity johnd -properties LastLogonDate |
Select-Object -ExpandProperty LastLogonDate
$lastLogon
现在包含一个
使用此选项,您可以使用以下方式对其进行格式化:
或者更好:
$lastLogon.ToShortDateString()
(这些表示略有不同;后者没有零填充)
格式字符串使您可以完全控制表示。该cmdlet的结果是一个具有一组属性的对象。您在表格格式中看到的输出不是对象中所包含的内容;这是它的一种显示形式 因此,要首先仅获取日期对象,您可以修改
Select object
调用(该调用已经在削减属性),如下所示:
$lastLogon = Get-ADUser -identity johnd -properties LastLogonDate |
Select-Object -ExpandProperty LastLogonDate
$lastLogon
现在包含一个
使用此选项,您可以使用以下方式对其进行格式化:
或者更好:
$lastLogon.ToShortDateString()
(这些表示略有不同;后者没有零填充)
格式字符串使您可以完全控制表示。这很难,更重要的是:
Get-ADUser -SearchBase 'OU=Users,OU=Home,DC=Domain,DC=local' -filter {Enabled -eq $True} -Properties * |
ForEach-Object {$_.whenChanged.ToShortDateString() + ',' + $_.SamAccountName}
这是一条艰难的道路,更为艰难的道路是:
Get-ADUser -SearchBase 'OU=Users,OU=Home,DC=Domain,DC=local' -filter {Enabled -eq $True} -Properties * |
ForEach-Object {$_.whenChanged.ToShortDateString() + ',' + $_.SamAccountName}
又抓到我了。不要在你不需要的时候做字符串操作,这是这里的信息。非常感谢Briantist-这看起来就是我要找的!我真的很感谢你的帮助!又抓到我了。不要在你不需要的时候做字符串操作,这是这里的信息。非常感谢Briantist-这看起来就是我要找的!我真的很感谢你的帮助!这似乎是一种获取信息的尴尬方式。查看briantist的答案,了解另一种方法获取信息(名称和LastLogonDate的单个AD查询)作为一个命令更好。我同意我最初构建日期字符串的尝试是笨拙的。给Briantist一个ToSortDateString()方法的分数。@LinuxNP,很容易出错。这也是一种很好的方法,+1这似乎是一种获取此信息的尴尬方式。查看briantist的答案,了解另一种方法获取信息(名称和LastLogonDate的单个AD查询)作为一个命令更好。我同意我最初构建日期字符串的尝试是笨拙的。给Briantist一个ToSortDateString()方法的分数。@LinuxNP,很容易出错。这也是一个很好的方法,+1