标题: [文本处理] 批处理怎样批量删除txt中的指定的文字? [打印本页]
作者: wangkuang 时间: 2020-12-2 18:26 标题: 批处理怎样批量删除txt中的指定的文字?
有多的txt文本,1.txt 2.txt 3.txt 每个txt中否含有 思想品德 这四个字
如何批处理删除所有txt中的 思想品德 四个字?
作者: ivor 时间: 2020-12-2 18:56
http://bcn.bathome.net/s/tool/index.html?down&key=sed
作者: wangkuang 时间: 2020-12-2 18:59
回复 2# ivor
太专业,可否直接上个代码
作者: Batcher 时间: 2020-12-2 23:37
回复 1# wangkuang
测试之前请注意做好备份- sed -i "s/思想品德//g" "*.txt"
复制代码
作者: lancer 时间: 2020-12-3 11:47
- @echo off
- echo. & echo 注意,被处理的文本编码必须是ANSI编码方式,UTF-8编码或其他编码的文本是无法通过批处理替换其内的内容的。
- echo. & echo 本批处理可以一次性处理多个文件,处理后的文本会生成副本文件,原文件不会删除
- echo. & echo 本批处理默认处理txt文本,不需要指定格式
- echo. & set /p "str1=请输入被替换字符串:"
- echo. & set /p "str2=替换为:"
- echo. & echo 正在替换中,请稍等。。。。。。
- for /f "delims=" %%i in ('dir /b *.txt') do (
- (for /f "delims=" %%j in (%%i) do (
- set "str3=%%j"
- call call set "str4=%%%%str3:%%str1%%=%%str2%%%%%%"
- call echo %%str4%%
- )
- )>>"%%~ni 副本.txt"
- )
- echo. & echo 替换完成,已在批处理所在目录生成新的副本文件
- echo. & pause
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |