zyyppnamur 发表于 2016-4-28 18:28:08


namur 发表于 2016-4-29 14:26

牛啊,大哥,我一直有个问题,也是txt替换的,文件夹1下面有0到999个文件夹,0到999每个文件夹下都有很多 ...
需要把现有的代码再嵌套进一个for循环中 使用循环的内容就是 dir遍历目录下的所有txt文件
zyypp 发表于 2016-4-29 15:39

需要把现有的代码再嵌套进一个for循环中 使用循环的内容就是 dir遍历目录下的所有txt文件 ...
能不能直接写给我,这些代码根本看不懂。。。
shy.gif

zyypp 发表于 2016-4-29 14:26:54


namur 发表于 2016-4-29 20:36

能不能直接写给我,这些代码根本看不懂。。。[*]@echo off
[*]SetLocal EnableDelayedExpansion
[*]set path=%1
[*]set file=%2
[*]set raw=%3
[*]set replace=%4
[*]
[*]
[*]set "file=%file:"=%"
[*]for /f "delims=" %%i in ('dir /s/b "%path%" "%file%"') do (
[*]      for /f "delims=" %%a in ('type "%%~fi"') do (
[*]                set "foo=%%a"
[*]                call,set foo=%%foo:%raw%=%replace%%%
[*]                call,echo/%%foo%%>>"%%~fi._"
[*]      )
[*]      move "%%~fi._" "%%~fi"
[*])复制代码

用法:
将以上代码保存为 bat文件
那么使用方法就是bat文件 "完整路径" "文件扩展名" 替换前内容 替换后内容
举个栗子
保存为bat.bat
[*]bat.bat "G:\test\txt" "*.txt" 我是替换前的字符   我是替换后的字符 复制代码

代码缺点替换前和替换后的字符中不支持空格


PS:嫌弃一下伸手党,脚本啊、代码啊。如果自己不去接触,不去了解,不去写。那永远都不可能会的。

Ruclinux 发表于 2016-4-28 17:25:00


namur 发表于 2016-4-29 20:36

能不能直接写给我,这些代码根本看不懂。。。

lol.gif
看不懂你也敢直接用? 佩服佩服

今晚我是你的 发表于 2016-4-29 15:39:51

@echo off
for /f "delims=" %%i in ('dir /s/b *.txt') do (
      for /f "delims=" %%a in ('type "%%~fi"') do (
                set "foo=%%a"
                call,set foo=%%foo:要替换的文字=替换后的内容%%
                call,echo/%%foo%%>>"%%~fi._"
)
move "%%~fi._" "%%~fi"
)
exit

0x69 发表于 2016-4-29 14:26:00

多少图形下的批量替换字符的软件,功能强大多了。
页: 1 [2]
查看完整版本: bat如何对一个txt文件查找111替换成222