Powershell 正在查找适用于windows10的filwever.exe-在命令提示符下查找Windows文件详细信息

Powershell 正在查找适用于windows10的filwever.exe-在命令提示符下查找Windows文件详细信息,powershell,windows-10,Powershell,Windows 10,我有一个图像文件吨,并想找出他们的细节。 这些详细信息显示在Windows资源管理器的右键单击属性上 然而,有成千上万的这样的文件,所以我必须做它在任何一个 Powershell或Gnubash或DOS 似乎filever.exe是用来做这件事的,但它不适用于windows10。 有人能帮忙吗 谢谢 Tobias Weltner博士专门写了一篇关于获取扩展文件属性的博文——我相信这正是您想要的 本质上,Shell.Application COM对象是您的朋友: $path = 'C:\Use

我有一个图像文件吨,并想找出他们的细节。 这些详细信息显示在Windows资源管理器的右键单击属性上

然而,有成千上万的这样的文件,所以我必须做它在任何一个 Powershell或Gnubash或DOS

似乎filever.exe是用来做这件事的,但它不适用于windows10。

有人能帮忙吗


谢谢

Tobias Weltner博士专门写了一篇关于获取扩展文件属性的博文——我相信这正是您想要的

本质上,Shell.Application COM对象是您的朋友:

$path = 'C:\Users\Public\Music\Sample Music\Maid with the Flaxen Hair.mp3'
$shell = New-Object -COMObject Shell.Application
$folder = Split-Path $path
$file = Split-Path $path -Leaf
$shellfolder = $shell.Namespace($folder)
$shellfile = $shellfolder.ParseName($file)
现在,它取决于文件类型以及可用的扩展属性。它们由索引号引用。要获取索引号和属性名称的列表,请执行以下操作:

0..287 | Foreach-Object { '{0} = {1}' -f $_, $shellfolder.GetDetailsOf($null, $_) }
如果只想获得文件中实际有值的文件的列表,这很有帮助:

0..287 | Where-Object { $shellfolder.GetDetailsOf($shellfile, $_) } | 
Foreach-Object { 
'{0} = {1} = {2}' -f $_, 
$shellfolder.GetDetailsOf($null, $_), 
$shellfolder.GetDetailsOf($shellfile, $_) 
}
要仅引用单个属性,只需使用要读取的属性的索引号。查看我的系统上的jpeg文件,索引169给出了宽度:

$shellfolder.GetDetailsOf($shellfile, 169)

查看Weltner博士的博客文章,了解一个非常有用的函数,名为Add FileDetails,您可以通过管道将输出从dir/get childitem传输到,并将对象输出到您感兴趣的详细信息。

询问软件显然是离题的。询问我们推荐或查找书籍、工具、软件库的问题,教程或其他非站点资源对于堆栈溢出来说是非主题的,因为它们往往会吸引固执己见的答案和垃圾邮件。相反,请描述问题以及迄今为止为解决问题所做的工作。