在 PowerShell 中查找最新修改的文​​件信息

Posted

技术标签:

【中文标题】在 PowerShell 中查找最新修改的文​​件信息【英文标题】:Find latest modified file information in PowerShell 【发布时间】:2014-07-24 13:15:38 【问题描述】:

我运行这段代码:

Get-ChildItem 'C:\Test Folder' | Where $_.LastWriteTime | select -last 1

我会返回上次修改文件的模式、LastWriteTime、长度和名称 - 太好了!

我也在尝试获取文件所有者的用户名。

我已添加此代码:

| ForEach-Object Get-Acl $_.FullName

返回文件的Path、Owner、Access

如何将 LastWriteTime 和 Owner 显示为输出中显示的唯一对象?

【问题讨论】:

【参考方案1】:

你确定你要做的不是下面的吗?

Get-ChildItem 'C:\Test Folder' | Sort $_.LastWriteTime | select -last 1

你可以试试这个:

$c = Get-ChildItem 'C:\Test Folder' | Sort $_.LastWriteTime | select -last 1 | foreach $a=$_;$b=Get-Acl $_.FullName; Add-Member -InputObject $b -Name "LastWriteTime" -MemberType NoteProperty -Value $a.LastWriteTime;$b
$c.LastWriteTime

【讨论】:

【参考方案2】:

因此,选择将允许您只获取您感兴趣的属性。

所以有几件事要做:

    找出可以选择的属性
    Get-ChildItem | Get-Member -membertype properties
    

    一旦您知道属性,只需将其添加到原始语句中的选择

    Get-ChildItem'c:\test folder' | where $_.lastwritetime | select -last 1 | `
    foreach  write-host $_.lastwritetime ((get-ACL).owner)
    

最后,不要害怕Get-Help 命令。

【讨论】:

以上是关于在 PowerShell 中查找最新修改的文​​件信息的主要内容,如果未能解决你的问题,请参考以下文章

在文件夹中查找最新修改的文​​件

从 Azure Blob 获取最新修改的文​​件

在bash中对所有最近修改过的文件运行脚本

使用聚合查找最新批次中的文件数

Ant:如何从目录中选择最新的修改文件?

比较C中两个文件的日期和时间[关闭]