bat脚本

今天用bat脚本做了一个自动修改几个配置文件内容的功能。

因为只是初略的看了一下bat的语法,用到的知识点只涉及了 :

rem   后面写注释

>      清空文件,然后向文件中写入内容

>>    向文件中追加内容

^      如果要将10以内的数字单独作为 内容写入文件,需要在数字前加^

如果要将一个%写入文件,必须要在.bat文件中写两个%%

ren  修改文件夹名称

call  调用另一个批处理程序,而不终止父批处理程序。

setlocal enabledelayedexpansion  启用延时扩展

set /a  进行连续赋值;计算时,可以省略变量的%号或!号,极为方便,是带百分号的 加法的缩写

FOR /f  解析文本,读取字符串

“delim=” 取消默认以空格作为分隔符----批处理默认以空格作为分隔符,分隔符会隐藏第一个分隔符后面的内容,要显示完整的信息就需要取消该功能

FOR /L %%varible IN (start,step,end) DO conmmand   ----start为开始计数的初始值,step为每次递增的值,end为结束值

 

echo xxxinfo>c:\configpeth\ip_config.txt

echo yyyyinfo>>c:\configpeth\ip_config.txt

echo  ^2>c:\configpeth\link_config.txt

echo of:wefrrrr ^2>>c:\configpeth\link_config.txt

rem  下面这条指令执行之后,会在文件中写入hhh%hhh

echo hhh%%hhh>>c:\configpeth\vvv_config.txt

rem  下面这条指令执行之后,会将Java从入门到精通(第3版)文件夹的名字改成Java从入门到精通

ren "E:\java\Java从入门到精通(第3版)" "Java从入门到精通"

rem  下面这条指令会完整的输出字符串内容

FOR /f "delims="  %%a in ("我和我的祖国  一刻也不能分割 无论我走到哪里 都留下一首赞歌") do echo %%a

pause>nul

运行结果:

我和我的祖国  一刻也不能分割 无论我走到哪里 都留下一首赞歌

 

下面的这段代码实现删除文件最后一行

@echo off

setlocal enabledelayedexpansion

for /f "delims=" %%i in (c:\test.txt) do (

set /a n+=1

set "m!n!=%%i")

set /a n-=1

(for /l %%i in ('1,1,!n!') do (

echo=!m%%i!))>c:\test.txt

 

  Windows下start命令的参数及功能介绍:

START ["title"] [/MIN] [command/program][parameters]

"title"   在窗口标题栏中显示的标题

MIN      以最小化方式启动窗口

posted on 2017-05-17 21:54  海萌  阅读(710)  评论(0编辑  收藏  举报