我正在寻找有关使用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
的命令,但不确定如何将其全部绑定。
任何人都有任何想法,谢谢
答案 0 :(得分:5)
这样的东西?
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
答案 1 :(得分:0)
可以通过使用计算属性来拉入ACL所有者字段来简化代码:
$Path = 'c:\'
Get-ChildItem $Path |
Select-Object *,@{name='owner';expression={
(get-acl $_.FullName).owner}}