windows - 批量 |回显多个变量到文件

标签 windows batch-file windows-10 command-line-interface mediainfo

目录包含 2 个(或更多)任意名称的视频文件。

video1.mkv
video2.mkv

需要找出每个视频的持续时间。为此,我们使用 MediaInfo .

setlocal EnableDelayedExpansion

for %%a in (*.mkv) do (
  for /f "usebackq" %%a in (`"mediainfo --Inform=Video;%%Duration%% %%a"`) do set duration=%%a

  echo "!duration!" > "data.txt"
)

问题是,它只打印 1 个值/持续时间(我认为是最后一个文件)。有效,只需购买一个文件。

如何让它处理目录中的所有文件?

最佳答案

只需使用 >>> 而不是 >,后者是追加而不是覆盖

setlocal EnableDelayedExpansion

for %%a in (*.mkv) do (
  for /f "usebackq" %%a in (`"mediainfo --Inform=Video;%%Duration%% %%a"`) do set duration=%%a

  echo "!duration!" >> "data.txt"
)

关于windows - 批量 |回显多个变量到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44473793/

相关文章:

Windows命令提示符删除文件夹中的文件

c++ - 将它们(函数)保存在内存中的同一位置

batch-file - 如何使用批处理脚本查找大阶乘

windows-10 - Apache Zeppelin 未加载到 Windows 10 的浏览器中

c++ - Windows 10下Winhttp SSL的问题

windows - DLL是在内核态还是用户态加载的?

batch-file - 在 GPO 中禁用注册表编辑工具时使用 Reg 查询? MS Office 版本查找

orm - 如何使用 dapper orm 执行批处理操作?

android - Visual Studio Cordova - 您可能没有运行此项目所需的环境或操作系统

c - 读取进程的内存