我正在尝试使用 Powershell 列出我的一些 mp3 文件。
我试过了
ls C:\test | Format-List -Property Name,Length
Run Code Online (Sandbox Code Playgroud)
这给了我
Name : testfile.mp3
Length : 10058533
Run Code Online (Sandbox Code Playgroud)
长度是我目前不关心的文件大小。
知道我可以在文件资源管理器中为列标题选择持续时间,我想将上面的内容重写为
ls C:\test | Format-List -Property Name,Duration
Run Code Online (Sandbox Code Playgroud)
但我得到的是
Name : testfile.mp3
Run Code Online (Sandbox Code Playgroud)
如何告诉 Powershell 返回持续时间的分钟和秒?或者甚至只是几秒钟。提前致谢
Mar*_*tin 10
要获得 mp3 的长度,可能最简单的方法是利用资源管理器使用的 Shell objekt。
恐怕我没有给你的单行本,但你总是可以制作一个你调用的脚本。
$path = 'M:\Musikk\awesome_song.mp3'
$shell = New-Object -COMObject Shell.Application
$folder = Split-Path $path
$file = Split-Path $path -Leaf
$shellfolder = $shell.Namespace($folder)
$shellfile = $shellfolder.ParseName($file)
write-host $shellfolder.GetDetailsOf($shellfile, 27);
Run Code Online (Sandbox Code Playgroud)
更多信息可以在这里找到:http : //powershell.com/cs/blogs/tobias/archive/2011/01/07/organizing-videos-and-music.aspx
编辑:此方法之所以必要,是因为长度信息与文件的其他元数据一起存在。
| 归档时间: |
|
| 查看次数: |
6968 次 |
| 最近记录: |