2

我正在寻找有关使用 Power shell 的文件信息的一些帮助,除了所有者信息之外,我们大部分时间都需要。

下面的代码返回早于 1 年的目录列表,但问题是我们似乎无法在其中显示所有者信息:

gci -r 
"D:\Network Shares\ICT\ICT\Network Shares\ICT\Innovations\Robert Pitt" | ? 
{
    $_.LastWriteTime -lt (Get-Date).AddYears(-1)} >> D:\temp\ICTFileAge.txt
}

我们知道名为 的命令Get-ACL,但不确定如何将其全部绑定。

请问大家有什么想法,谢谢

4

2 回答 2

7

像这样的东西?

gci -r "D:\Network Shares\ICT\ICT\Network Shares\ICT\Innovations\Robert Pitt" |
? {$_.LastWriteTime -lt (Get-Date).AddYears(-1)} |
 % {$_ | add-member -name "Owner" -membertype noteproperty -value (get-acl $_.fullname).owner -passthru} |
  Select fullname,lastwritetime,owner
于 2011-06-02T14:08:20.263 回答
1

可以通过使用计算属性拉入 ACL 所有者字段来简化代码:

$Path = 'c:\'

Get-ChildItem $Path |
Select-Object *,@{name='owner';expression={
(get-acl $_.FullName).owner}}
于 2016-07-15T13:33:57.907 回答