2023年11月26日发(作者:)
【建议收藏】Windows批处理(cmdbat)常⽤命令总结
Windows批处理/cmd/bat常⽤命令总结
前⾔
批处理⽂件(batch file)包含⼀系列 DOS命令,通常⽤于⾃动执⾏重复性任务。
⽤户只需双击批处理⽂件便可执⾏任务,⽽⽆需重复输⼊相同指令。
编写批处理⽂件⾮常简单,但难点在于确保⼀切按顺序执⾏。
编写严谨的批处理⽂件可以极⼤程度地节省时间,在应对重复性⼯作时尤其有效。
在Windows中善⽤批处理可以简化很多重复⼯作!
1. 什么是批处理
批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进⾏批量的处理。批处理⽂件的扩展名为。
bat
⽬前⽐较常见 的批处理包含两类:DOS批处理和PS批处理。
PS批处理是基于强⼤的图⽚编辑软件Photoshop的,⽤来批量处理图⽚的脚本;
⽽DOS批处理则是基于DOS命令的,⽤来⾃动地批量地执⾏DOS命令以实现特定操作的脚本。
这⾥要讲的就是DOS批处理。
批处理是⼀种简化的脚本语⾔,它应⽤于DOS和Windows系统中,它是由DOS或者Windows系统内嵌的命令解释器(通常是
或者)解释运⾏。类似于Unix中的Shell脚本。
批处理⽂件具有.bat或者.cmd的扩展名,其最简单的例⼦,是逐⾏书写在命令⾏中会⽤到的各种命令。更复杂的情况,需要使⽤
if,for,goto等命令控制程序的运⾏过程,如同C,Basic等中⾼级语⾔⼀样。如果需要实现更复杂的应⽤,利⽤外部程序是必要的,这包
echo
rem
pause
call
start
goto
type 显⽰⽂本⽂件的内容。
copy 将⼀份或多份⽂件复制到另⼀个位置。
del 删除⼀个或数个⽂件。
move 移动⽂件并重命名⽂件和⽬录。(Windows XP Home Edition中没有)
ren 重命名⽂件。
replace 替换⽂件。
attrib 显⽰或更改⽂件属性。
find 搜索字符串。
fc ⽐较两个⽂件或两个⽂件集并显⽰它们之间的不同
4.3 ⽹络命令
@ #
关闭单⾏回显
echo off #
从下⼀⾏开始关闭回显
@echo off #
从本⾏开始关闭回显。⼀般批处理第⼀⾏都是这个
echo on #
从下⼀⾏开始打开回显
echo # echo off echo on
显⽰当前是状态还是状态
echo. #””
输出⼀个回车换⾏,空⽩⾏
#(echo, echo; echo+ echo[ echo] echo/ echo)
同
5.2 errorlevelecho %errorlevel%
每个命令运⾏结束,可以⽤这个命令⾏格式查看返回码
默认值为0,⼀般命令执⾏出错会设 errorlevel 为1
5.3 dir显⽰⽂件夹内容
dir #
显⽰当前⽬录中的⽂件和⼦⽬录
dir /a #
显⽰当前⽬录中的⽂件和⼦⽬录,包括隐藏⽂件和系统⽂件
dir c: /a:d # C
显⽰盘当前⽬录中的⽬录
dir c: /a:-d # C
显⽰盘根⽬录中的⽂件
dir c: /b/p #/b/p
只显⽰⽂件名,分页显⽰
dir *.exe /s #.exe
显⽰当前⽬录和⼦⽬录⾥所有的⽂件
5.4 cd切换⽬录
cd #
进⼊根⽬录
cd #
显⽰当前⽬录
cd /d d:sdk #
可以同时更改盘符和⽬录
5.5 md创建⽬录
md d:abc # d:a
如果不存在,将会⾃动创建中级⽬录
# mkdir abc
如果命令扩展名被停⽤,则需要键⼊。
5.6 rd删除⽬录
rd abc # abc
删除当前⽬录⾥的⼦⽬录,要求为空⽬录
rd /s/q d:temp # d:temp /q
删除⽂件夹及其⼦⽂件夹和⽂件,安静模式
5.7 del删除⽂件
del d:test.txt #
删除指定⽂件,不能是隐藏、系统、只读⽂件
del /q/a/f d:temp*.*
删除 d:temp ⽂件夹⾥⾯的所有⽂件,包括隐藏、只读、系统⽂件,不包括⼦⽬录
del /q/a/f/s d:temp*.*
删除 d:temp 及⼦⽂件夹⾥⾯的所有⽂件,包括隐藏、只读、系统⽂件,不包括⼦⽬录
5.8 ren重命名命令
ren d:temp tmp #
⽀持对⽂件夹的重命名
5.9 cls清屏
5.10 type显⽰⽂件内容
type c:boot.ini #
显⽰指定⽂件的内容,程序⽂件⼀般会显⽰乱码
type *.txt #.txt
显⽰当前⽬录⾥所有⽂件的内容
5.11 copy拷贝⽂件
copy c:test.txt d:test.bak
复制 c:test.txt ⽂件到 d: ,并重命名为 test.bak
copy con test.txt
从屏幕上等待输⼊,按 Ctrl+Z 结束输⼊,输⼊内容存为test.txt⽂件
con代表屏幕,prn代表打印机,nul代表空设备
copy 1.txt + 2.txt 3.txt
合并 1.txt 和 2.txt 的内容,保存为 3.txt ⽂件
如果不指定 3.txt ,则保存到 1.txt
copy test.txt +
复制⽂件到⾃⼰,实际上是修改了⽂件⽇期
5.12 title设置cmd窗⼝的标题
title 新标题 #cmd
可以看到窗⼝的标题栏变了
5.13 ver显⽰系统版本
5.14 label 和 vol设置卷标
vol #
显⽰卷标
label #
显⽰卷标,同时提⽰输⼊新卷标
label c:system #C system
设置盘的卷标为
5.15 pause暂停命令
5.16 rem 和 ::注释命令
注释⾏不执⾏操作
5.17 date 和 time
⽇期和时间
date #""
显⽰当前⽇期,并提⽰输⼊新⽇期,按回车略过输⼊
date/t #
只显⽰当前⽇期,不提⽰输⼊新⽇期
time #""
显⽰当前时间,并提⽰输⼊新时间,按回车略过输⼊
time/t #
只显⽰当前时间,不提⽰输⼊新时间
5.18 goto 和 :
跳转命令
:label #:
⾏⾸为表⽰该⾏是标签⾏,标签⾏不执⾏操作
goto label #
跳转到指定的标签那⼀⾏
5.19 find (外部命令)
查找命令
find "abc" c:test.txt
在 c:test.txt ⽂件⾥查找含 abc 字符串的⾏
如果找不到,将设 errorlevel 返回码为1
find /i “abc” c:test.txt
查找含 abc 的⾏,忽略⼤⼩写
find /c "abc" c:test.txt
显⽰含 abc 的⾏的⾏数
5.20 more (外部命令)
逐屏显⽰
more c:test.txt # c:
逐屏显⽰的⽂件内容
5.21 tree
显⽰⽬录结构
tree d: #D
显⽰盘的⽂件⽬录结构
5.22 &
顺序执⾏多条命令,⽽不管命令是否执⾏成功


发布评论