[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理修改文件内的数值问题

想修改.ass文件中第四行的PlayResX: 数值为188,以下为ass文件前几段内容

[Script Info]
; Script generated by FFmpeg/Lavc60.3.100
ScriptType: v4.00+
PlayResX: 384
PlayResY: 288
ScaledBorderAndShadow: yes
YCbCr Matrix: None

只需要修改第四行的PlayResX: 为PlayResX: 188

以下是我弄得代码,求大佬指教~
  1. @echo off  
  2. setlocal enabledelayedexpansion  
  3. for /f "delims=" %%a in (*.ass) do (  
  4.     set "str=%%a"  
  5.     if not "!str:PlayResX:=!"=="!str!" (  
  6.         for /f "tokens=*" delims=: %%b in ("%%a") do (  
  7.             set "str=%%b"  
  8.             set "num=188"  
  9.             set "newStr=PlayResX: !num!"  
  10.             echo,!newStr!  
  11.         )  
  12.     )  
  13. )  
  14. pause
复制代码

返回列表