【问题标题】:Powershell Select-Object and Alter Property Names when modifying values修改值时的 Powershell 选择对象和更改属性名称
【发布时间】:2014-03-11 05:32:21
【问题描述】:

我有一个 Cmdlet Get-AdUser,我将它传递给一个选择对象,并在该选择中运行 AccountExpires 属性上的函数以将属性值转换为日期值。

我的问题是当输出对象时,列标题不再友好,并继承了用于返回新值的函数。如何形成语句以便输出友好名称?希望不必组装我自己的 PSObject。

Get-AdUser "some.account" -Properties AccountExpires | select Enabled, Name, $({[datetime]$d =$_.AccountExpires; ConvertTo-Date($d)})

然后我得到一个结果表头...

Enabled       True       [datetime]$d =$_.AccountExpires; ConvertTo-Date($d)
-------       -----      ----------------------------------------------------

【问题讨论】:

    标签: powershell


    【解决方案1】:

    使用 @{E={scriptblock};L="Label"} 的表达式哈希表。

    select Enabled, Name, @{E={$({[datetime]$d =$_.AccountExpires; ConvertTo-Date($d)})};L="AccountExpires"}

    有关创建自定义选定对象的更多信息,请参阅http://technet.microsoft.com/en-us/library/ee692794.aspx

    【讨论】:

    • 更改对我来说是最小的编辑,但我不得不稍微修改声明。正是我想要的。非常感谢! Select-Object SamAccountName, Name, @{E={[datetime]$d =$_.AccountExpires; ConvertTo-Date($d)};L="AccountExpires"}
    猜你喜欢
    • 2011-08-31
    • 2023-03-08
    • 1970-01-01
    • 2021-11-30
    • 2013-04-18
    • 1970-01-01
    • 2020-03-11
    • 2012-01-18
    • 1970-01-01
    相关资源
    最近更新 更多