如何利用BAT批处理修改文件名及文件中内容??

如某文件夹下,有许多文本文件

aaa.txt
bbb.txt
ccc.txt
.....
改名为aaa#.txt
bbb#.txt
ccc#.txt

同时aaa.txt文件中有一行含有aaa也改为aaa#
bbb.txt文件中有一行含有bbb也改为bbb#
ccc.txt文件中有一行含有ccc也改为ccc#
谢谢

@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /b *.txt') do (
for /f "delims=" %%b in ('type "%%a"') do (
set "word1=%%b"
set "word1=!word1:%%~na=%%~na#!"
echo,!word1!>>%%~na#.txt

del %%a /f /q 2
)
pause

注:把批处理文件跟txt文件放在一起运行,测试前请备份好原文件

您的采纳是我们的动力和鼓励,请及时点击【采纳回答】

追问

有一遗憾:
1:txt中原空格行会被删除掉,能否继续保留,原空行修改后还是空行;
2:此批文件用于XML文件改名和改文件内容可以吗??

追答

1、已对空行进行处理

2、可以,只要是纯文本文档都可以

@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /b *.txt') do (
for /f "tokens=1* delims=:" %%b in ('findstr /n .* %%a') do (
set "word1=%%c"
if "!word1!" neq "" (set "word1=!word1:%%~na=%%~na#!")
echo.!word1!>>%%~na#.txt

del %%a /f /q 2>nul
)
pause

注:把批处理文件跟txt文件放在一起运行,测试前请备份好原文件

您的采纳是我们的动力和鼓励,请及时点击【采纳回答】

请及时采纳回答

请及时采纳回答

请及时采纳回答

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网