如何写BAT 修改指定文件内容,并保存

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何写BAT 修改指定文件内容,并保存相关的知识,希望对你有一定的参考价值。

最好写一下每个命令的解释。
回车怎么输入?

1、首先要创建一个BAT文件BAT文件可以由txt直接修改 只需要修改.txt为.bat即可。

2、右键进入编辑模式 此时bat以txt的方式打开。

3、在txt中输入括号内不需要@echo off <路径显示关闭>,pause<暂停>。

4、进行保存,然后直接运行,如果没有@echo off 你下面的编码会带有文件位置如果没有pause 打开后立刻关闭。

5、按如图方式在原有添加echo 内容 <显示 内容>即如图效果。

6、如果按如图编写方式goto a <到达a处>:a <路标a>即使程序重复显示。

参考技术A rem 定义变量延迟环境,关闭回显
@echo off&setlocal enabledelayedexpansion
rem 读取a.txt所有内容
for /f "eol=* tokens=*" %%i in (a.txt) do (
rem 设置变量a为每行内容
set a=%%i
rem 如果该行有123,则将其改为456
set "a=!a:123=456!"
rem 把修改后的全部行存入$
echo !a!>>$)
rem 用$的内容替换原来a.txt内容
move $ a.txt

本回答被提问者采纳
参考技术B @echo off
chcp 65001
rem 批量替换D:\temp目录下的所有文件,把 “123”替换为“456”
rem tarDir目标目录 strOld原字符串 strNew目标字符串
set tarDir=D:\temp
set strOld=123
set strNew=456
rem 定义变量修改本地化延期
setlocal enabledelayedexpansion
rem 循环取出要处理的文件名
rem for /R %%i in (.,*) do (
for /f "tokens=*" %%i in ('dir %tarDir% /b') do (
set "var=%%i"
if not !var!.==. (
rem 单个文件一行行处理,将旧字段替换成新字段
for /f "tokens=*" %%j in (%tarDir%!var!) do (
set "tmp=%%j"
if not !tmp!.==. (
set "tmp=!tmp:%strOld%=%strNew%!"
rem 将处理后的每一行记录追加到temp.txt文件中
echo !tmp!>>temp.txt
)
)
rem 在单个文件的每一行经过替换操作后,将处理后的文本从temp.txt临时文件剪贴到目标处理文件中(剪贴后临时文件会自动删除)
move temp.txt %tarDir%!var!
)
)

写个bat 脚本 打开cmd 并指向某个目录

如题,打开后要求在cmd窗口中指向要求的目录。
不会写 谢谢各位

打开cmd并指向某个目录的bat脚本:

cipher ——显示或更改 NTFS 分区上的目录(文件)的加密。

defrag ——启动磁盘碎片整理程序。

edit ——启动DOS下的文本编辑程序,在XP中也有保留。

expand ——WINDOWS中自。

带的解压程序,可以把安装盘中文件名以_结尾的文件解压,NT系列的安装就是在DOS下用这个对文件进行解压后进行排序安装的。

EXTRACT或extrac32 ——对CAB文件进行解压缩的程序,现在都用WINRAR,所以这个功能没什么保留价值了。

makecab ——制作CAB压缩包的程序,对启动盘的制作倒很有用处。

msg ——可以将消息发送给同网用户的程序,格式是[MSG 对方机器名 信息](不包括中括号)。

ping ——可以检测网络的运行状态的程序,从WINDOWS时代开始就有了。

proxycfg ——设置代理用的程序。

regsvr32 ——服务注册程序,一般是插件的注册,也可以是解码器。

reg或regedit ——注册表操作程序,有时候在BAT、CMD脚本中可以用这个参数进行注册表的修改操作。

shutdown ——关机程序,可以在一定范围内控制一台或者一个局域网里所有机器的关机时间等。

systeminfo ——查看系统当前配置情况的参数,也可以显示出运行时间等。

TASKKILL ——进程删除程序,这个可以关闭至少一个进程。

tasklist ——查看当前进程列表的程序。

参考技术A

0艾希恩写的命令没错,但我估计,你是要实现打开一个CMD窗口,里面的路径为指定的,但不退出窗口,对吧?

 

那就在bat文件中写到

cmd /k "cd /d F:\\123"

这样就在运行后直接定位到F:\\123

追问

好的 去试试

本回答被提问者和网友采纳
参考技术B 用cd命令。
例:cd D:\123\a追问

不行的 我要的是脚本啊

参考技术C start cmd.exe
"C:
cd \Users\MiracleToday\Desktop"

以上是关于如何写BAT 修改指定文件内容,并保存的主要内容,如果未能解决你的问题,请参考以下文章

用bat复制指定文件到指定文件目录下的所有文件夹?

怎样用bat 文件 批量删除指定文件名的文件夹

bat脚本通过特定软件打开文件runtime

将文件夹名称批量修改为指定名称

批处理引用变量到指定命令中的用法

如何写bat脚本自动保存数据为txt文件?