226批处理相关实例.docx

上传人:b****5 文档编号:5970845 上传时间:2023-01-02 格式:DOCX 页数:9 大小:16.55KB
下载 相关 举报
226批处理相关实例.docx_第1页
第1页 / 共9页
226批处理相关实例.docx_第2页
第2页 / 共9页
226批处理相关实例.docx_第3页
第3页 / 共9页
226批处理相关实例.docx_第4页
第4页 / 共9页
226批处理相关实例.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

226批处理相关实例.docx

《226批处理相关实例.docx》由会员分享,可在线阅读,更多相关《226批处理相关实例.docx(9页珍藏版)》请在冰豆网上搜索。

226批处理相关实例.docx

226批处理相关实例

“批处理每日一学”相关实例,一下实例均在“批处理每日一学”的基础上有说明,不明白之处可以查阅

目录:

1.Nul的应用实例

2.屏蔽输出内容(nul)

3.变量延迟setlocal语句

4.%与for语句的应用

5.FOR参数F与变量延迟的综合应用

6.FOR参数R和D应用

7.循环字

1.Nul的应用实例

:

:

@echooff

echo在批处理中回显信息有两个命令,echo和set/p=

同点在于都是对程序执行信息的屏幕输出,区别在于echo是换行输出,而

set/p=

echobathome

echobatman

pause>nul

pause

set/p=bathome

set/p=batman

pause>nul

2.屏蔽输出内容(nul)

@echooff

echo屏蔽输出内容1

echo屏蔽输出内容2

pause

rem>nul或者1>nul作用是屏蔽成功执行命令的输出内容

echo屏蔽输出内容31>nul

rem2>nul作用是屏蔽命令执行失败的输出内容

echo屏蔽输出内容42>nul

rem1>nul2>nul作用是屏蔽的所有输出提示[不论正确与否]

pause>nul

echo.

pause

3.变量延迟setlocal语句

@echooff

echo变量延迟:

读取完整条语句之后,不立即对该行变量赋值,而在下个单条语句前赋值。

echo.

echo变量延迟的作用,说简单点,就是将“复合语句”拆分成“单条语句”,即实现了“延迟”,再进行赋值预处理。

echo.

echo例1.没有启动变量延迟

seta=4&echo%a%

echo由于要读取整条语句后,才能变量赋值,在该语句之前,变量a为空值,因此将执行echo的命令,显示“echo处于打开状态/echo处于关闭状态”

seta=5&echo%a%

echo%a%

echo.

pause>nul

echo例2.启动变量延迟

setlocalenabledelayedexpansion

seta=4

echo!

a!

seta=5&echo!

a!

echo.

pause>nul

:

%%application

echo例3.启动变量延迟

@echooff

echo****开始前的set赋值语句****

echo.

setdoct=abcde

echosetdoct=%doct%

echo.

setdoct1=abcde123

echosetdoct1=%doct1%

echo.

set%i=456

echoset%%i=456

echo.

echoRem:

"set赋值,set%%i=%i%,由于屏蔽一个%%,所以执行seti=%i%"

seti=123

echo.

echoseti=123

echo.

echoRem:

"set赋值,seti=%i%"

echo.

echo.

echo****for循环语句中的%%应用****

echo.

echofor循环中﹪﹪i是第一个参数,也就是0

echo.

echo如果i字符前加个﹪,在命令行中会屏蔽这个﹪,而且﹪只有相邻的﹪进行组合匹配,其实例如下:

echo.

for/l%%iin(010)do(

echosetdoct﹪﹪i=﹪﹪i,这里执行"doct0=0"赋值命令

setdoct%%i=%%i

echo.

echoecho﹪﹪i

echo%%i

echo﹪﹪i代表第一个参数,他不是变量,这里的值为0,结果为"0"

echo.

echoecho!

﹪﹪i!

echo!

%%i!

echo由于﹪﹪i的参数值从0~0,而0数值不是变量,因此无效,即执行echo的命令,显示“ECHO处于打开状态/echo处于关闭状态”

echo.

echoechoi

echoi

echoi代表是一个string

echo.

echo"echo!

i!

"

echo!

i!

echo.

echoecho﹪i

echo%i

echo.

echoecho!

﹪i!

echo!

%i!

echo在变量延迟中,用!

括起来,表示可以延迟的变量

echo.

echoecho﹪﹪doct﹪﹪i﹪i﹪

echoRem:

前面两个"﹪﹪"显示"﹪",接下来是字符"doct",接下来"﹪﹪i"显示"0",接着"﹪i﹪",显示变量i的值"123",所以结果为"﹪doct0123"

echo%%doct%%i%i%

echo.

echoecho﹪﹪doct﹪﹪i﹪i,其结果为"﹪doct0i"

echo%%doct%%i%i

echo.

echoecho﹪﹪doct﹪﹪i﹪i

echo%%doct%%i%i

echo.

echoechodoct﹪﹪i

echodoct%%i

echo.

echoecho﹪doct﹪﹪i﹪,第一个﹪与第二个﹪中间为doct,接着为﹪i﹪,变量i的值,其结果为"%doct%%i%"

echo%doct%%i%

echo上述将doct变量与i变量的值组合显示,而不是显示“doct%%i”变量的值

echo.

echoecho﹪doct﹪﹪i﹪"

echo%doct%%i%

echo由于没有加!

echo.

echoecho!

doct﹪﹪i!

echo!

doct%%i!

echo.

pause

4.%与for语句的应用

:

:

@echooff

setlocalenabledelayedexpansion

for/l%%iin(1,1,5)do(seta=%%i&echo!

a!

pause

seta=1&echo%a%

seta=1&echo!

a!

seta=2&echo!

a!

seta=3&echo!

a!

seta=4&echo!

a!

seta=5&echo!

a!

pause

rem如果批处理中有2个%,在命令行里屏蔽1个%;如果是1个%,命令行直接屏蔽。

echo1

setA=123

:

:

(A=123)

set%B=345

:

:

(B=345)

set%%A=567

:

:

(%A=567)

set%%%D=456

:

:

(%D=456)

set%%%%A=789

:

:

(%%A=789)

echoA

echo%A

:

:

(=echoA)

echo%A%

:

:

(123)

echo%%A

:

:

(=echo%A)

echo%%A%

:

:

(=echo%A)

echo%%A%

:

:

(=echo%A)

echo%%%A

:

:

(=echo%A)

echo%%%A

:

:

(=echo%A)

echo%%%A%

:

:

(=echo%123)

echo%%%A%

:

:

(=echo%123)

echo%%%%A

:

:

(=echo%%A)

echo%%%%A

:

:

(=echo%%A)

echo%%%%A%

:

:

(=echo%%A)

echo%%%%A%

:

:

(=echo%%A)

pause

5.FOR参数F与变量延迟的综合应用

@echooff

for/f"tokens=*"%%1in("abaacadaaeaf")do(

set.=%%1

callset.=%%.:

aa=@%%

for/f"tokens=1-3delims=@"%%1in('callecho%%.%%')doecho%%1%%2%%3

pause>nul

setlocalenabledelayedexpansion

for/f"tokens=*"%%1in("abaacadaaeaf")do(

setA=%%1

setA=!

A:

aa=@!

echo!

A!

for/f"tokens=1-3delims=@"%%1in("!

A!

")doecho%%1%%2%%3

pause>nul

rem首先建立临时文件test.txt

echo;注释行,这是临时文件,用完删除>test.txt

echo11段12段13段14段15段16段>>test.txt

echo21段,22段,23段,24段,25段,26段>>test.txt

echo31段-32段-33段-34段-35段-36段>>test.txt

pause

FOR/F"eol=;tokens=1,3*delims=,-"%%iin(test.txt)doecho%%i%%j%%k

Pause

FOR/F"eol=delims="%%iin(test.txt)doecho%%i

Pause

Deltest.txt

6.FOR参数R和D应用

@echooff

:

parameters/d

for/d%%iin(d:

\*)doecho%%i>>1.txt

pause

del1.txt

:

parameters/r

for/rd:

\%%iin(*.exe)do@echo%%i>>2.txt

pause

del2.txt

:

seachini

for/rc:

\%%iin(boot.ini)doifexist%%iecho%%i

pause

7.循环字

@echooff

setlocalEnableDelayedExpansion

setline=我是要循环的字~我的长度是15

echo%line%

pause

for/l%%iin(0,1,15)do(

set/p=!

line:

~%%i,1!

ping127.1-n2>nul

pause

for/l%%iin(1110)do(

set/p=O

for/l%%ain(1110)dover>nul

pause>nul

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 城乡园林规划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1