找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25212|回复: 3

[文本处理] 批处理如何在文本的特定行指定字符串后面添加/插入一个字符?

[复制链接]
发表于 2012-5-25 10:40:08 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-9-9 13:11 编辑

求助:批处理如何在指定的行和列中添加一个字符?
公司有一些宣传片会不定的更新到一个指定的文件夹,现在我设想利用批处理做一个自动制作播放列表的脚本。原代码如下:
  1. @echo
  2. del 123.txt /f /q
  3. del play.kpl /f /q
  4. echo 获取当前目录下所有WMV的文件名到List.txt下
  5. dir /o:n /b /s *wmv >list.txt
  6. echo 开始制作列表
  7. echo [playlist]>>123.txt
  8. echo 读取List.txt内容并写到播放列表文件
  9. for /f "delims=" %%j in  (d:\video\list.txt) do (
  10. echo File=%%j>>123.txt
  11. )
  12. echo NumberOfEntries=10 >>123.txt
  13. echo Version=2 >>123.txt
  14. echo Currentindex=5 >>123.txt
  15. del list.txt /f /q
  16. ren 123.txt play.kpl
复制代码
运行后得出Play.kpl的内容如下:
[playlist]
File=D:\Video\120429163000_085_流行速遞 00_02_34-00_14_28.wmv
File=D:\Video\120429163000_085_流行速遞 00_17_06-00_29_08.wmv
File=D:\Video\120506163000_085_流行速遞 00_01_35-00_12_43.wmv
File=D:\Video\120506163000_085_流行速遞 00_15_03-00_27_45.wmv
File=D:\Video\120513163000_085_流行速遞 00_01_40-00_14_33.wmv
File=D:\Video\120520163000_085_流行速遞 00_00_22-00_11_38.wmv
NumberOfEntries=10
Version=2
Currentindex=5
现求助:如何能把上面红色标示的File改成File1、Feil2.。。。File6呢?
发表于 2012-5-25 11:48:31 | 显示全部楼层
本帖最后由 poter 于 2012-5-25 11:50 编辑
  1. @echo
  2. setlocal enabledelayedexpansion
  3. del 123.txt /f /q
  4. del play.kpl /f /q
  5. echo 获取当前目录下所有WMV的文件名到List.txt下
  6. dir /o:n /b /s *wmv >list.txt
  7. echo 开始制作列表
  8. echo [playlist]>>123.txt
  9. echo 读取List.txt内容并写到播放列表文件
  10. for /f "delims=" %%j in  (d:\video\list.txt) do (
  11. set /a a+=1
  12. echo File!a!=%%j>>123.txt
  13. )
  14. echo NumberOfEntries=10 >>123.txt
  15. echo Version=2 >>123.txt
  16. echo Currentindex=5 >>123.txt
  17. del list.txt /f /q
  18. ren 123.txt play.kpl
复制代码
 楼主| 发表于 2012-5-25 13:32:30 | 显示全部楼层

RE: 已经解决:如何在指定的行和列中添加一个字符

公司有一些宣传片会不定的更新到一个指定的文件夹,现在我设想利用批处理做一个自动制作播放列表的脚本。原 ...
gzvtc46 发表于 2012-5-25 10:40


谢谢你的指导,可我不明白这段代码是什么意思了:
set /a a+=1
echo File!a!=%%j>>123.txt

是不是a+1赋值给a,然后再循环啊?
发表于 2012-5-25 14:35:56 | 显示全部楼层
膜拜中,还是搞不明白这个可延时变量怎么用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-21 03:29 , Processed in 0.031101 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表