gpt4 book ai didi

powershell - 在 powershell MTP 连接中访问上次修改日期

转载 作者:行者123 更新时间:2023-12-04 12:59:09 36 4
gpt4 key购买 nike

我只是尝试将文件从我的手机 (iPhone) 自动传输到我的硬盘。它通过 MTP 和 Powershell 工作(根据其他 Stackoverflow 帖子,这似乎是唯一的工作方法)。

一般来说,它工作得很好。我用 $shell = new-object -com Shell.Application然后 $shell.GetFolder.items()通过 COM 对象在文件系统中导航。

但是我想知道如何获得真实的文件详细信息,因为它们看起来很奇怪......例如一张图像的输出:

Parent       : System.__ComObject
Name : DSUF9528.JPG
Path : ::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\\?\usb#vid_05ac&pid_12a8&mi_00#0#{6ac27878-a6fa-4155-ba85-f98f491d4f33}\SID-{10002,Internal
Storage,256000000000}\{00000002-0000-0000-0200-000000000000}\{0000160A-0000-0000-0A16-000000000000}\{00001DD7-0000-0000-D71D-000000000000}
GetLink :
GetFolder :
IsLink : False
IsFolder : False
IsFileSystem : False
IsBrowsable : False
ModifyDate : 30.12.1899 00:00:00
Size : 0
Type : JPG-Datei

如您所见,大小为 0,修改日期为 1899。这是为我 iPhone 上的所有 5000 个图像设置的,实际上是错误的。 Windows 资源管理器可以显示这些文件的有效值(它是如何做到的?)。我该怎么做才能通过 Powershell 找出真实值,或者为什么 COM 对象返回的值被破坏了?

我很感激任何帮助:)

最佳答案

可以使用 ExtendedProperty 通过 MTP 获取文件的正确修改日期。 .

foreach ($item in $shell.GetFolder.items()) {
Write-Host $item.ExtendedProperty("System.DateModified") $item.Name
}
示例输出:
1/9/2021 9:02:35 AM image.png
12/16/2020 9:13:53 PM Work Work Orc Warcraft Peon.mp4
1/22/2021 5:43:16 PM ea4435db93cc_thumb840.jpg

关于powershell - 在 powershell MTP 连接中访问上次修改日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61419063/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com