如何在批处理脚本中读取部分文件名

时间:2013-11-12 17:51:09

标签: batch-file

我有一个名为&#34的文件;测试PID 1100 DELAY 322ms .aac"我使用以下代码获得: -

for %%i in (test*.aac) do SET "AACFILE=%%~ni"
D:\Converter\bin\faad.exe -o C:\fb\%1.wav "C:\fb\%AACFILE%.aac"

在此之后,我需要从文件中读取 DELAY和.aac 之间的数值,并在最后一行中回显它。

D:\Converter\bin\EAC3to.exe C:\fb\%1.wav C:\fb\%1-Synced.wav +322ms

另外我需要为回显值添加100,例如,如果文件中的值是322ms,那么我想输出422ms。

1 个答案:

答案 0 :(得分:1)

试试这个:

@echo off
setlocal enabledelayedexpansion

for /f "tokens=5 delims=. " %%a in (%AACFILE%) do (
  set num=%%a & set num=!num:ms=! & set /a num=!num!+100
  D:\Converter\bin\EAC3to.exe C:\fb\%1.wav C:\fb\%1-Synced.wav +!num!ms
)
相关问题