获取文件所有者/作者

时间:2017-02-12 21:41:25

标签: powershell

我有以下脚本从C:驱动器检索特定文件类型,并将特定文件属性输出到分隔的CSV文件。我希望能够检索文件所有者和作者。非常感谢任何帮助。

# PowerShell script to list the .xlsx  files under the C Drive
$Dir = get-childitem "C:" -recurse -force
$List = $Dir | where {$_.extension -eq ".xlsx"}
$List |Select-Object fullname, LastAccessTime, LastWriteTime, CreationTime |Export-Csv -path C:\Scripts\xlsx.csv -NoTypeInformation

2 个答案:

答案 0 :(得分:8)

我一发布这个ia就能找到解决方案。我将@{N='Owner';E={$_.GetAccessControl().Owner}}添加到select-object字符串中。它现在看起来像这样:

$List |Select-Object fullname, LastAccessTime, LastWriteTime, CreationTime, @{N='Owner';E={$_.GetAccessControl().Owner}} |Export-Csv -path C:\Scripts\xlsx.csv -NoTypeInformation

答案 1 :(得分:1)

Chris Adkins 的回答适用于 PowerShell 5.1,但不适用于我使用 PowerShell 7.1。

<块引用>

@{N='Owner';E={$_.GetAccessControl().Owner}}

我发现这适用于 5.1 和 7.1 版本:

$List | Select Fullname, LastAccessTime, LastWriteTime, CreationTime, @{N="Owner";E={ (Get-Acl $_.FullName).Owner }}