【发布时间】:2020-12-16 16:11:18
【问题描述】:
我正在尝试对文件夹中的多个媒体文件执行命令:.\mediainfo.exe --Output=XML "$path\file\*.*" > .\file\$output.xml。这是我目前拥有的:
$path = get-item F:\Desktop\work\
cd $path
$output = (Get-ChildItem '.\file\*.*').Basename
.\mediainfo.exe --Output=XML "$path\file\*.*" > .\file\$output.xml
我的问题是 MediaInfo.exe 将在 XML 输出文件上创建包含文件夹 F:\Desktop\work\file 中所有媒体的所有信息。
我尝试了以下方法:
$path = get-item F:\Desktop\work\
$dir = get-item $path\file | ? {$_.PSIsContainer}
cd $path
$output = (Get-Item '.\file\*.*').Basename
ForEach ($d in $dir){.\mediainfo.exe --Output=XML "$d" > .\file\$output.xml
}
但同样的事情。 output.xml 的名称将与所有媒体名称连接。例如,如果我有两个文件名 audio1.aif 和 audio2.aif,我的 XML 的名称将是 audio1 audio2.xml
知道如何实现吗?谢谢
【问题讨论】:
-
文件夹名和预期的输出文件名有关系吗?
-
不是文件夹名而是输出文件必须命名为文件夹中的媒体文件。
标签: powershell scripting mediainfo