2023年12月1日发(作者:)

Bat(批处理)⽂件编写⼿册(⼀)

⼀、批处理常⽤的DOS命令篇

1.

echo命令

显⽰此命令后⾯的字符(字符不需要加引号)

【扩展】

其中,不能显⽰;

^

ehco.,:;"/]+

表⽰换⾏,中间不能空格,同样,这些符号也是⼀样的效果;

答复命令中的快捷回复,⽐如我们需要删除某个⽬录,回车后会提⽰,需要⼿动确认,但我们也可以快捷回复,如

rd(Y/N)echo Y | rd

/s E:mybat

向⽂件⾥写内容,,注意有该⽂件则清空内容,重新写⼊新内容,没有则创建,写⼊内容,如果需要追加

echo hello word > E:

内容,可以使⽤, 两个表⽰追加写⼊,后续会讲

echo mybat >> E:>>>>>

echo offecho on

此语句后⾯所有运⾏的命令都将 不显⽰/显⽰ 命令⾏本⾝,即 关闭/打开 回显功能。

echo

2.

@命令

此命令加在其它运⾏时需要不显⽰的命令⾏的最前⾯,即运⾏时不显⽰该⾏命令⾏(之影响当前⾏)。如:(常这样搭配使⽤,

@echo off

将不显⽰所有的运⾏命令,包括本⾝这⾏)

3.

pause命令

在批处理⽂件中,加⼊此命令会暂停批处理⽂件的执⾏,并提⽰:

请按任意键继续. . .

4.

rem命令

注释作⽤,不执⾏该命令后⾯的内容。如:

rem 这是⼀条注释

5.

::命令

注释作⽤,区别在于,处于打开状态时,如果前⾯没有加上,注释内容将会显⽰出来,⽽此命令,在不加的情况下也是不显

echorem@@

⽰注释的。如:

:: 这是⼀条注释

6.

call命令

类似于函数调⽤,在⼀个批处理⽂件中,调⽤另⼀个批处理⽂件,如果不加上call的话,执⾏完调⽤的批处理⽂件后,将⽆法返回当前批处

理⽂件,并继续执⾏当前批处理⽂件的后续命令。注意,该⽅法是调⽤,即运⾏在同⼀个cmd窗⼝之中。

7.

cd命令

在同⼀分区下切换:直接

cd 路径

在不同分区下切换:

cd /d 路径

【扩展】

%cd%echo %cd%

:显⽰当前的完整路径, 如:

8.

dir命令

显⽰⽬录中的⽂件和⼦⽬录列表

【扩展】可能很多时候,我们需要找某个⽂件,直接的话,⼀下⼦刷屏了,此时,我们可以使⽤:在每个信息屏幕后暂

dir ⽬录dir /P [⽬录]

停;我们发现我们查看的时候有很多我们并不关⼼的数据,时间,创建者等信息,此时我们可以使⽤:了解更多相关命令可以⾃

dir /B [⽬录]

⾏查找。

9.

attrib命令

显⽰或更改⽂件属性,⽂件属性分为。如:查看⽂件属性:

R - 只读⽂件属性A - 存档⽂件属性S - 系统⽂件属性H - 隐藏⽂件属性attrib

attrib +H attrib -H

,更改⽂件属性:(设置⽂件的属性为隐藏);清除⽂件属性:(删除⽂件的隐藏属性)。

如需将某⽂件夹中的某类⽂件做属性处理,可以使⽤号(匹配任意字符),如:(将 bat学习 ⽂件夹中的所有bat⽂

*attrib +H bat学习*.bat

件设置为隐藏属性)注意,只是作⽤于当前⽂件夹中,不作⽤于其⼦⽬录下的bat⽂件;如需将某⽂件夹及其⼦⽬录下的所有某类⽂件做属

性处理,可以通过,如:(将 bat学习 ⽂件夹及其⼦⽬录下的所有bat⽂件设置为隐藏属性)。

/sattrib -H bat学习*.bat /s

10.

del命令

删除命令,参数有:

/P - 删除⽂件时会进⾏提⽰确认/S - 从所有⼦⽬录删除指定⽂件/Q - 删除时,不做确认,默认允许/A - 根据属性删除⽂件

如:删除 bat学习 ⽂件夹中的所有只读的txt⽂件 (注:

del /ar bat学习*.txt/a[attrib参数]

11.

copy命令

复制⽂件,。如:(将C盘中的⽂件复制到D盘中);在复制时如需更改其

只能复制⽂件,不能复制⽂件夹copy C: D:

⽂件名及格式,如:(将复制并更改为);

copy C: C:

在当前⽂件中,如需将其⼦⽬录中的⽂件复制⼀份到当前⽂件中,如:(就是将⼦中的所有⽂件,复制⼀份到当前⽬录

copy .⼦⽬录1⽬录1

下);如需将某个⽂件夹中的⽂件复制到另⼀个⽂件夹中,如:(注,这不是复制⽂件夹,第⼆,且两个⽂件夹都是存在

copy ⽬录1 ⽬录2

的,第三,如果⽬录1下⾯还有⼦⽬录,将不会被复制,只会复制⽬录1中的⽂件)

合并⽂件,(将的内容与的内容进⾏合并,并赋值在中);如果,在合

copy +

并的时候,没有传⼊合并之后的⽂件名,那么合并之后的内容将会覆盖在传⼊的第⼀个⽂件中,如:(最后合并的

copy +

⽂件内,将会覆盖内容)。注意,在合并图⽚或者歌曲这样的⼆进制⽂件时,必须使⽤参数,如:

/bcopy /b 3 +

3 3/a

,还有另⼀个参数是,即ASCII码,⽤于纯⽂本⽂件的合并。

12.

xcopy命令

复制⽂件(夹),如(将⽬录1下的所有⽂件及⼦⽬录下的所有⽂件(夹[⾮空⽬录])复制到⽬录2中,注:参数不能

xcopy /s ⽬录1 ⽬录2/s

省,是为了作⽤于其下⾯的所有⼦⽬录中,省去,跟copy的效果是⼀样的了)其它参数,参数,跟区别在于,会复制空的⽬

/e/s/e

录;参数,前⾯提到的参数,默认是不会复制的,⽽区别于参数,就是会复制系统⽂件跟隐藏⽂件,可以与

/h系统⽂件隐藏⽂件/s/e

配使⽤,如

xcopy /e /h ⽬录1 ⽬录2

【扩展】

copy命令xcopy命令

,在使⽤的过程中,如果复制的⽬录下有同名的⽂件,将会提⽰是否覆盖,需要输⼊y,如果我们需要默认确认的话,

可以在复制的命令最后加上,如:即表⽰默认覆盖。

/ycopy ⽬录 ⽬录2 /y

13.

md命令

创建单个⽂件夹。如:(在当前⽂件夹中,创建⼀个mybat⽂件夹),可带路径,如果创建的⽂件夹名称中,带有空格等,需要

md mybat

⽤引号引起来,如:

md "my bat"

创建多个⽬录,如果名称中有空格,不⽤引号引起来的话,就是同时创建多个⽂件夹,如:,执⾏后你会发现,创建⼀个my⽂件

md my bat

夹跟⼀个bat⽂件夹,同时创建多个⽂件夹时,⽤空格隔开。

创建多级⽬录,如:(将会创建⼀个1a⽂件夹,在1a⽂件夹中创建⼀个2a⽂件夹,在2a⽂件夹中…),⼀键搞定。

md 1a2a3a4a5a

14.

rd命令

删除⼀个⽬录。先说参数吧,,除⽬录本⾝外,还将删除指定⽬录下的所有⼦⽬录跟⽂件,简单来说就是我们平常理解的删除,把这个⽂

/s

件夹跟⾥⾯的⽂件删除;,就是在带进⾏⽂件删除时的确认,不带需要⼿动进⾏确认删除。

/q/s

什么参数不带,如:,只能删除空的⽂件夹,删除不为空的⽂件夹时,需要带上参数,如:,我们会发现需要我们⼿

rd mybat/srd /s mybat

动进⾏删除,那么可以再携带参数,如:,同样的,如果⽬录路径中,有空格或者特殊符号等,需要⽤引号引起来。同

/qrd /s /q "my bat"

理,,可以⼀次性删除多个⽂件夹

rd /s /q ⽬录1 ⽬录2

15.

ren命令

重命名⽂件。命令:如果不传路径则为当前⽬录,不需要携带路径,只要传⼊修改的名称

ren [path]filename1 filename2filename1filename2

就⾏,如:

ren bat学习mtbat mybat

也可以批量进⾏重命名,通过进⾏匹配重命名,如:(将mybat⽂件夹下的所有txt类型⽂件改为bat类型⽂件)

*?ren mybat*.txt *.bat

16.

move命令

移动⽂件并重命名⽂件和⽬录。如:(把mybat⽂件夹下的移动到myfile⽂件夹中);

move myfilemove

move

(将mybat⽂件夹下的移动到myfile⽂件夹下并重命名为);如:(由于

已经在myfile⽂件夹中了,如果执⾏此条命令辉提⽰我们是否需要覆盖,如果需要默认的话,可以加上参数)如:

/ymove /y

上⾯介绍在中,如果移动的⽂件名与⽬标⽂件⽬录中的同名,则会提⽰,注意了,如果在中,移动的⽂件名与⽬

同⼀分区是否覆盖不同分区

录⽂件⽬录中的同名,则会提⽰,不会做任何操作。

⽂件存在

17.

find命令

在⽂件中搜索字符串。如:(在mybat⽂件夹下的⽂件中,搜索abc字符串)返回搜索到的⾏内容,如果有多条就

find "abc"

返回多条的⾏内容。

参数有搜索时忽略⼤⼩写;搜索到了的话,前⾯会显⽰所在⾏号;仅显⽰包含字符串的⾏数;显⽰不包含搜索字符串的⾏,相当

/i/n/c/v

于反向搜索;

18.

findstr命令

命令差不多,参数有:对搜索词不区分⼤⼩写;将搜索词作为正则表达式使⽤;在当前⽬录以及所在⼦⽬录中搜索查找,

find/i/r/s

如:(在当前⽬录及所有⼦⽬录下 的txt⽂件中搜索字符串self);⼀般⽤于对⼀个整体字符串的搜索(含有空格),

findstr /s "self" *.txt/c

如:(在⽂件中,查找my bat字符串)

findstr /c:"my bat"

新⼿⼩⽩,代码写得不好,如果有理解错误的,还望⼤⽜在评论区指出来,⾮常感谢!

以上就是运⽤ Bat(批处理)⽂件编写⼿册(⼀) 的所有内容了,点赞收藏加关注是最⼤的⽀持哦!