怎么实现写个批处理文件,修改指定文件的内容?谢谢大侠!!!
比如在D盘下有个x.txt文件,文件里有“xxx”字符串,怎么写个批处理文件,实现以下功能:运行批处理文件,如果d盘下的文件名是x.txt,就把该文件名改为y.txt,并...
比如在D盘下有个x.txt文件,文件里有“xxx”字符串,怎么写个批处理文件,实现以下功能:运行批处理文件,如果d盘下的文件名是x.txt,就把该文件名改为y.txt,并且把文件里的“xxx”改成“yyy”;如果是文件名是y.txt,则反过来修改???请知道的各位朋友能不能贴上实现的命令行,谢谢了
展开
3个回答
展开全部
你好!这个可以用纯DOS命令进行修改,这里可以直接调用DOS的编辑窗口来进行保存输入,下面就是具体的操作方式:
设当前盘为C盘,D盘下建立批处理文件B.bat,设目录下无x.txt文件,并要建立一个输入内容且保存起来,做命令操作。
C:\>D: /*将当前盘改为D盘*/
D:\edit B.bat /*在D盘下做一个B.bat的批处理文件,进入编辑窗口*/
这时进入批处理文件窗口,在此进行命令编辑,为了具有通用性,也把绝对的地址放上去。
copy con d:\x.txt /*在D盘下建立名为x的文本文件*/
ren d:\x.txt y.txt /*将D盘下的x.txt文件改名为y.txt*/
edit d:\y.txt /*进入D盘y.txt文件进行编辑修改*/
现在你通过手动File — Save保存就行。然后到D盘运行B.bat文件,并到y.txt的文件内容修改掉并保存就行。
希望我的回答能令你满意!
设当前盘为C盘,D盘下建立批处理文件B.bat,设目录下无x.txt文件,并要建立一个输入内容且保存起来,做命令操作。
C:\>D: /*将当前盘改为D盘*/
D:\edit B.bat /*在D盘下做一个B.bat的批处理文件,进入编辑窗口*/
这时进入批处理文件窗口,在此进行命令编辑,为了具有通用性,也把绝对的地址放上去。
copy con d:\x.txt /*在D盘下建立名为x的文本文件*/
ren d:\x.txt y.txt /*将D盘下的x.txt文件改名为y.txt*/
edit d:\y.txt /*进入D盘y.txt文件进行编辑修改*/
现在你通过手动File — Save保存就行。然后到D盘运行B.bat文件,并到y.txt的文件内容修改掉并保存就行。
希望我的回答能令你满意!
追问
其实我是想实现:只要运行批处理文件,就能让指定目录下的两个文件进行切换,且只留一个
展开全部
给你个批处理: tens/(safety)xxx:yyy-x.txt:y.txt/fengasd/xiugai(wanchengxiugai)/postyougetgwenjian////-1789y.txt.x.txt13596782345代码运行/minlineforotake/&12$/-:;deskttttttt.echo已运行 纯手打 望采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
@echo off
set a=x.txt
set b=y.txt
set x=xxx
set y=yyy
pushd d:\
if exist %a% goto ab
set c=%a%
set a=%b%
set b=%c%
if exist %% goto ab
echo %b% %a%都不存在
goto :end
:ab
(for /f "tokens=*" %%i in ('type "%a%"') do (
set s=%%i
call set s=!s:%x%=%y%!
echo !s!))>"%b%"
del "%a%"
:end
puase
set a=x.txt
set b=y.txt
set x=xxx
set y=yyy
pushd d:\
if exist %a% goto ab
set c=%a%
set a=%b%
set b=%c%
if exist %% goto ab
echo %b% %a%都不存在
goto :end
:ab
(for /f "tokens=*" %%i in ('type "%a%"') do (
set s=%%i
call set s=!s:%x%=%y%!
echo !s!))>"%b%"
del "%a%"
:end
puase
追问
朋友,运行了你的代码,可以切换文件,但是文件内容改来改去都是:!s!
在改下代码?谢了啊
追答
sorry,漏了打开变量延迟的第二句
@echo off
setlocal enabledelayedexpansion
set a=x.txt
set b=y.txt
set x=xxx
set y=yyy
pushd d:\
if exist %a% goto ab
set c=%a%
set a=%b%
set b=%c%
if exist %% goto ab
echo %b% %a%都不存在
goto :end
:ab
(for /f "tokens=*" %%i in ('type "%a%"') do (
set s=%%i
call set s=!s:%x%=%y%!
echo !s!))>"%b%"
del "%a%"
:end
puase
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询