DOS、批处理命令一览
2017-01-03 23:46
302 查看
DIR: dir E:\......\......
dir C:\windows\system32\*.exe
dir C:\windows\system32\*.exe /p
dir C:\windows\system32\*.exe /w
CD(CHDIR): cd \windows\system32
MD(MKDIR): md a
md E:\a\a\a\a
RD(RMDIR): rd a
RdE:\a\a\a\a (注意,所删除的目录必须为空)
PATH: path E:\music
Path=E:\music;C:\windows;C:\
(该命令用于当执行某个文件时,电脑会在当前目录下查找,如果找不到,就会到path中定义的目录下查找。可以将path命令写入autoexec.bat中,这样不用每次都定义目录了)
COPY: copy F:\download\*.* E:\copydownload (将F盘download文件夹中所有文件拷贝到E盘copydownload文件夹中(copydownload必须存在))
copy E:\1.mp3/b + E:\1.txt/a E:\11.mp3 (将1.txt中的内容写入到1.mp3的末尾,并存储在11.mp3中,用记事本打开11.mp3,在其末尾可以看到1.txt的内容,使用时,m??p3(或其他文件类型)文件不宜过大(500K左右为宜),该命令中/b指的是以二进制格式复制,/a指的是以ASCII格式复制,二进制格式的文件应该放在+号前)
copy nul E:\1.txt
DEL: del E:\*.exe
del E:\a/q 参数/q表示删除文件夹a中的文件时不询问用户
对于其他参数可参考del /? 所显示的内容
(DEL命令不能删除受保护的系统文件)
REN(RENAME): ren E:\a\*.txt *.html
(REN命令有一个缺陷,当使用通配符“*”进行替换时,替换的结果只能是0~9,如果再多,
就会在循环一次,从0开始,就会产生错误,使用时要注意)
MOVE: move E:\a\11.txt E:\b
move E:\a\11.txt E:\b\11(renamed).txt
TYPE: type E:\1.txt
EDIT edit
edit /b /h /r /s /nnn 文件路径
Edit /b E:\1.txt
Edit /h E:\1.txt
Edit /r E:\1.txt
Edit /s E:\1.txt
Edit /001 E:\1.txt
ATTRIB: attrib [±R] [±A]
[±H][±S] 文件名 [/s]
attrib +h E:\a
attrib +hE:\a\*.* /s(与命令attrib +hE:\a\*.*比较)
FC: fc [/A] [/C] [/L] [/LBn] [/N] [/T] [/W] [/nnnn] 文件名1 文件名2
若要进行二进制比较,使用下面的语法格式:
fc /b 文件名1 文件名2
fc E:\a\a1\1.txt E:\a\a2\1.txt
fc /a E:\a\a1\1.txt E:\a\a2\1.txt
fc /c E:\a\a1\1.txt E:\a\a2\1.txt
fc /l E:\a\a1\1.txt E:\a\a2\1.txt
fc /n E:\a\a1\1.txt E:\a\a2\1.txt
fc /t E:\a\a1\1.txt E:\a\a2\1.txt
fc /w E:\a\a1\1.txt E:\a\a2\1.txt
fc /0011 E:\a\a1\1.txt E:\a\a2\1.txt
fc /b E:\a\a1\1.txt E:\a\a2\1.txt
TREE: tree
tree E:\a
tree E:\a /a (用文本字符代替图形字符方式显示目录间的连接线)
tree E:\a /f (显示各目录中的文件名)
XCOPY: xcopy source [dest] [/A|/M] [/Y|/-Y] [/D:DATE] [/P] [/S] [/E] [/V] [/W]
(例子略)
RMDIR:删除目录
F7:显示已经输入过的命令列表
F9:键入命令号码来调回那个命令
Alt+F7:删除缓冲区中所有的命令
禁用dir命令:
建立文件a.bat
输入:
@echo off
doskey ls=dir $*
doskey dir=echoBad COMMAND or file name
将其保存至C盘根目录下,在命令行中键入a.bat直接运行
将call a.bat 语句加入到autoexec.bat文件中(每次开机自动执行),重启系统即可
禁用某命令(一般用于危险命令的锁定,比如format
fdisk等等,此处以rd命令为例):
doskey rd=$t(或doskey rd=bad command or filename)
解锁命令:
doskey rd=(回车)
doskey/? 该命令查询doskey的用法(类似于帮助信息)
(对于其他命令,也可以用 命令名 /? 的命令来查询其用法)
分页浏览一个文件(以txt文件为例):
type E:\1.txt |more 或者 more < E:\1.txt
需要继续显示时,回车即可(每次多显示一行)(用Ctrl+PauseBreak可以退出浏览)
对文件内容排序(以txt文件为例,将sort.txt文件放入E盘下):
type E:\sort.txt
sort E:\sort.txt
sort /r E:\sort.txt
sort命令将键盘输入的内容排序后重定向输入到文件中:
sort > 文件名(回车)
内容(每行直接回车)
在结束行按Ctrl+Z,行末出现”^Z”标记,此时回车即可
重定向与管道:
<:从文件中读取命令而不是从键盘中
>&:将一个句柄的输出写入到另一个句柄的输入中
<&:从一个句柄读取输入写入到另一个句柄的输出中
>:清除掉原文件的内容后写入指定文件
>>:追加内容到指定文件中
|:连接两个命令的管道,先执行左边的命令,再执行右边的命令
例子:
sort < E:\1.txt> E:\2.txt
重定向防止病毒入侵:
刚装完系统后,打开命令行输入:
cd \winnt\system32
dir *.exe >E:\exes.txt
dir *.dll >E:\dlls.txt
如果以后系统感觉有问题,运行下边的命令:
cd \winnt\system32
dir *.exe >E:\exes1.txt
dir *.dll >E:\dlls1.txt
fc E:\exes.txtE:\exes1.txt
fc E:\dlls.txtE:\dlls1.txt
通过比较,观察多了哪些文件和程序,以及文件大小、日期等信息的变化,进而判断是否中毒。
systeminfo:显示计算机及操作系统的详细配置信息
语法:systeminfo [ /s system [ /u username [ /p [password] ] ] ] [ /fo format] [/nh ] [/?]
参数解释:
/s system:指定远程计算机名或IP地址,默认为本机
/fo format:指定输出格式,有效值table、list、csv(不按照列表排列,乱七八糟的)
/nh:取消输出结果中的列标题,仅对table和csv有效
/?:显示systeminfo的帮助信息
显示日期和时间操作:
DATE /T(不重新输入时间)
TIME /T
更改日期或时间的格式:
DATE 1-31-2009或2009.1.31或2009/1/31
TIME [ Hours :[ Minutes [ : Seconds [ .百分秒(0~99)]
] ] [ A|P ] ]
查看内存状态:MEM /p /d /c
设定环境变量的命令:SET
拷贝键盘输入的内容到文本文件中:
copy con E:\1.txt
fajfchasdjfjkasfhsdkf(回车)
wejafhsfjhdfgdasfhds(回车)
fesjafgwehgdhwef(Ctrl+Z、回车)
批处理文件命令:
call 在批处理程序内调用其他批处理程序
start 新的窗口中在调用其他批处理程序
pause(暂停)
rem(注释)
shift
@(不显示命令行)
cls(清屏)
echo on:显示其后的命令
echo off:不显示其后命令
如何避开系统的询问直接运行命令:
格式:echo 答复语|命令
例如:echo y|del E:\a.txt 就会直接将E盘的a.txt删除而不询问用户
终止批处理程序:Ctrl+C
批处理的跳转:
跳转标示符为“:”,跳转语句为goto
例如:
:begin
……
……
goto begin
if(条件语句)
if [not]errorlevel number command
if [not]string1==string2 command
if [not] existfilename command
参数:
not:条件为假时,执行命令
command:命令
errorlevelnumber:当前面的程序运行后,返回出口的代码等于或大于number,才执行命令
string1==string2:只有string1等于string2时候,才执行命令
exist filename:当且仅当文件filename存在时,执行命令
for (循环语句)
在批处理中,for的格式如下:
for [%%variable]in (set) do [command] [arguments]
在命令提示符下,for的格式如下:
for [%variable] in(set) do [command] [arguments]
参数:
%%variable和%variable:代表可替换的变量,for命令将用指定文件中的每一个文本字符串来替换%%variable和%variable知道该命令处理完所有文件为止。
(set):制定一个或多个要用特定命令对其进行处理的文件或字符串
扩展的for语句:
for /d %variablein (set) do [command-parameters]
for /r[[drive:]path] %variable in (set) do [command-parameters](如果set为”.”,则枚举该目录)
for /L %variablein (start,step,end) do [command-parameters]
for /f [“options”]%variable in (fileset) do command
for /f [“options”]%variable in (“string”) do command
for /f [“options”]%variable in (command) do command
choice (选择语句)
例如:
@echo off
choice /c:smestart,middle,end
批处理文件中还可以像C语言一样使用参数,这只需用到一个参数表示符%。%表示参数,参数是指在运行批处理文件时在文件名后加的字符串。变量可以从 %0到%9,%0表示文件名本身,字符串用%1到%9顺序表示。
例如,C:根目录下一批处理文件名为f.bat,内容为 format
%1
则如果执行C:\>f a: 则实际执行的是format
a:
又如C:根目录下一批处理文件的名为t.bat,内容为 type
%1 type %2
那么运行C:\>t a.txt b.txt 将顺序地显示a.txt和b.txt文件的内容
使用注册表:
REGEDIT
网络操作:
TELNET PING IPCONFIG NETSTAT ARP
在特定的时刻执行命令:
AT
dir C:\windows\system32\*.exe
dir C:\windows\system32\*.exe /p
dir C:\windows\system32\*.exe /w
CD(CHDIR): cd \windows\system32
MD(MKDIR): md a
md E:\a\a\a\a
RD(RMDIR): rd a
RdE:\a\a\a\a (注意,所删除的目录必须为空)
PATH: path E:\music
Path=E:\music;C:\windows;C:\
(该命令用于当执行某个文件时,电脑会在当前目录下查找,如果找不到,就会到path中定义的目录下查找。可以将path命令写入autoexec.bat中,这样不用每次都定义目录了)
COPY: copy F:\download\*.* E:\copydownload (将F盘download文件夹中所有文件拷贝到E盘copydownload文件夹中(copydownload必须存在))
copy E:\1.mp3/b + E:\1.txt/a E:\11.mp3 (将1.txt中的内容写入到1.mp3的末尾,并存储在11.mp3中,用记事本打开11.mp3,在其末尾可以看到1.txt的内容,使用时,m??p3(或其他文件类型)文件不宜过大(500K左右为宜),该命令中/b指的是以二进制格式复制,/a指的是以ASCII格式复制,二进制格式的文件应该放在+号前)
copy nul E:\1.txt
DEL: del E:\*.exe
del E:\a/q 参数/q表示删除文件夹a中的文件时不询问用户
对于其他参数可参考del /? 所显示的内容
(DEL命令不能删除受保护的系统文件)
REN(RENAME): ren E:\a\*.txt *.html
(REN命令有一个缺陷,当使用通配符“*”进行替换时,替换的结果只能是0~9,如果再多,
就会在循环一次,从0开始,就会产生错误,使用时要注意)
MOVE: move E:\a\11.txt E:\b
move E:\a\11.txt E:\b\11(renamed).txt
TYPE: type E:\1.txt
EDIT edit
edit /b /h /r /s /nnn 文件路径
参数 | 说明 |
/b | 以黑白模式编辑 |
/h | 以硬件许可的最大行编辑文件 |
/r | 以只读模式浏览文件 |
/s | 使用短文件名(一般为8个字符) |
/nnn | 限制每行nnn个字符,一般用于二进制文件的编辑 |
Edit /b E:\1.txt
Edit /h E:\1.txt
Edit /r E:\1.txt
Edit /s E:\1.txt
Edit /001 E:\1.txt
ATTRIB: attrib [±R] [±A]
[±H][±S] 文件名 [/s]
文件属性 | 说明 |
只读属性(R) | 只能被系统化其他程序读取但不能被修改或删除 |
归档属性(A) | 新建或修改过的需备份的文件 |
隐藏属性(H) | 不能被查看(使用DIR、TREE/F及诸如此类的命令)、修改或删除 |
系统属性(S) | 用于操作系统,也想隐藏文件一样,不能被查看、修改或删除 |
/s | /s表示不但处理指定目录中的所有文件,同时也处理子目录中的文件 |
attrib +h E:\a
attrib +hE:\a\*.* /s(与命令attrib +hE:\a\*.*比较)
FC: fc [/A] [/C] [/L] [/LBn] [/N] [/T] [/W] [/nnnn] 文件名1 文件名2
若要进行二进制比较,使用下面的语法格式:
fc /b 文件名1 文件名2
参数 | 说明 |
/A | 显示正文部分的开始行和结束行,其余各行以省略号代替 |
/C | 不区分大小写 |
/L | 进行正文文件比较 |
/LBn | 进行正文文件比较,并设置n行缓冲区(默认值为100) |
/N | 在一个ASCII码类型的比较过程中,显示行号 |
/T | 区分制表符和空格。默认方式是把制表符看做空格,每18个字符一停 |
/W | 按单词比较,将连续空格算作一个空格 |
/nnnn | 指定必须匹配的行数,不满nnnn行匹配作为有区别的行处理 |
fc E:\a\a1\1.txt E:\a\a2\1.txt
fc /a E:\a\a1\1.txt E:\a\a2\1.txt
fc /c E:\a\a1\1.txt E:\a\a2\1.txt
fc /l E:\a\a1\1.txt E:\a\a2\1.txt
fc /n E:\a\a1\1.txt E:\a\a2\1.txt
fc /t E:\a\a1\1.txt E:\a\a2\1.txt
fc /w E:\a\a1\1.txt E:\a\a2\1.txt
fc /0011 E:\a\a1\1.txt E:\a\a2\1.txt
fc /b E:\a\a1\1.txt E:\a\a2\1.txt
TREE: tree
tree E:\a
tree E:\a /a (用文本字符代替图形字符方式显示目录间的连接线)
tree E:\a /f (显示各目录中的文件名)
XCOPY: xcopy source [dest] [/A|/M] [/Y|/-Y] [/D:DATE] [/P] [/S] [/E] [/V] [/W]
参数 | 说明 |
source | 待复制文件的位置和名字 |
dest | 文件复制的位置,默认为当前目录 |
/A | 只复制设置为档案属性的源文件,不改变源文件的档案属性 |
/M | 复制具有档案属性的源文件,并关闭文件的档案属性 |
/Y | 如果目标文件已经存在,源文件将覆盖目标文件,而不请求确认 |
/-Y | 与/Y相反,请求确认 |
/D:DATE | 复制修改或指定日期后的源文件 |
/P | 每个文件须征得用户同意后才复制 |
/S | 从原文件及其所有子目录中复制文件,若相应子目录不为空,则创建目标子目录 |
/E | 即使与原目录相对应的目标子目录为空,也要建立目标子目录 |
/V | 当复制完目标文件后,检查每个文件,确认目标文件与源文件相同 |
/W | 显示信息等待换盘 |
RMDIR:删除目录
F7:显示已经输入过的命令列表
F9:键入命令号码来调回那个命令
Alt+F7:删除缓冲区中所有的命令
禁用dir命令:
建立文件a.bat
输入:
@echo off
doskey ls=dir $*
doskey dir=echoBad COMMAND or file name
将其保存至C盘根目录下,在命令行中键入a.bat直接运行
将call a.bat 语句加入到autoexec.bat文件中(每次开机自动执行),重启系统即可
禁用某命令(一般用于危险命令的锁定,比如format
fdisk等等,此处以rd命令为例):
doskey rd=$t(或doskey rd=bad command or filename)
解锁命令:
doskey rd=(回车)
doskey/? 该命令查询doskey的用法(类似于帮助信息)
(对于其他命令,也可以用 命令名 /? 的命令来查询其用法)
分页浏览一个文件(以txt文件为例):
type E:\1.txt |more 或者 more < E:\1.txt
需要继续显示时,回车即可(每次多显示一行)(用Ctrl+PauseBreak可以退出浏览)
对文件内容排序(以txt文件为例,将sort.txt文件放入E盘下):
type E:\sort.txt
sort E:\sort.txt
sort /r E:\sort.txt
sort命令将键盘输入的内容排序后重定向输入到文件中:
sort > 文件名(回车)
内容(每行直接回车)
在结束行按Ctrl+Z,行末出现”^Z”标记,此时回车即可
重定向与管道:
<:从文件中读取命令而不是从键盘中
>&:将一个句柄的输出写入到另一个句柄的输入中
<&:从一个句柄读取输入写入到另一个句柄的输出中
>:清除掉原文件的内容后写入指定文件
>>:追加内容到指定文件中
|:连接两个命令的管道,先执行左边的命令,再执行右边的命令
例子:
sort < E:\1.txt> E:\2.txt
重定向防止病毒入侵:
刚装完系统后,打开命令行输入:
cd \winnt\system32
dir *.exe >E:\exes.txt
dir *.dll >E:\dlls.txt
如果以后系统感觉有问题,运行下边的命令:
cd \winnt\system32
dir *.exe >E:\exes1.txt
dir *.dll >E:\dlls1.txt
fc E:\exes.txtE:\exes1.txt
fc E:\dlls.txtE:\dlls1.txt
通过比较,观察多了哪些文件和程序,以及文件大小、日期等信息的变化,进而判断是否中毒。
systeminfo:显示计算机及操作系统的详细配置信息
语法:systeminfo [ /s system [ /u username [ /p [password] ] ] ] [ /fo format] [/nh ] [/?]
参数解释:
/s system:指定远程计算机名或IP地址,默认为本机
/fo format:指定输出格式,有效值table、list、csv(不按照列表排列,乱七八糟的)
/nh:取消输出结果中的列标题,仅对table和csv有效
/?:显示systeminfo的帮助信息
显示日期和时间操作:
DATE /T(不重新输入时间)
TIME /T
更改日期或时间的格式:
DATE 1-31-2009或2009.1.31或2009/1/31
TIME [ Hours :[ Minutes [ : Seconds [ .百分秒(0~99)]
] ] [ A|P ] ]
查看内存状态:MEM /p /d /c
设定环境变量的命令:SET
拷贝键盘输入的内容到文本文件中:
copy con E:\1.txt
fajfchasdjfjkasfhsdkf(回车)
wejafhsfjhdfgdasfhds(回车)
fesjafgwehgdhwef(Ctrl+Z、回车)
批处理文件命令:
call 在批处理程序内调用其他批处理程序
start 新的窗口中在调用其他批处理程序
pause(暂停)
rem(注释)
shift
@(不显示命令行)
cls(清屏)
echo on:显示其后的命令
echo off:不显示其后命令
如何避开系统的询问直接运行命令:
格式:echo 答复语|命令
例如:echo y|del E:\a.txt 就会直接将E盘的a.txt删除而不询问用户
终止批处理程序:Ctrl+C
批处理的跳转:
跳转标示符为“:”,跳转语句为goto
例如:
:begin
……
……
goto begin
if(条件语句)
if [not]errorlevel number command
if [not]string1==string2 command
if [not] existfilename command
参数:
not:条件为假时,执行命令
command:命令
errorlevelnumber:当前面的程序运行后,返回出口的代码等于或大于number,才执行命令
string1==string2:只有string1等于string2时候,才执行命令
exist filename:当且仅当文件filename存在时,执行命令
for (循环语句)
在批处理中,for的格式如下:
for [%%variable]in (set) do [command] [arguments]
在命令提示符下,for的格式如下:
for [%variable] in(set) do [command] [arguments]
参数:
%%variable和%variable:代表可替换的变量,for命令将用指定文件中的每一个文本字符串来替换%%variable和%variable知道该命令处理完所有文件为止。
(set):制定一个或多个要用特定命令对其进行处理的文件或字符串
扩展的for语句:
for /d %variablein (set) do [command-parameters]
for /r[[drive:]path] %variable in (set) do [command-parameters](如果set为”.”,则枚举该目录)
for /L %variablein (start,step,end) do [command-parameters]
for /f [“options”]%variable in (fileset) do command
for /f [“options”]%variable in (“string”) do command
for /f [“options”]%variable in (command) do command
choice (选择语句)
例如:
@echo off
choice /c:smestart,middle,end
批处理文件中还可以像C语言一样使用参数,这只需用到一个参数表示符%。%表示参数,参数是指在运行批处理文件时在文件名后加的字符串。变量可以从 %0到%9,%0表示文件名本身,字符串用%1到%9顺序表示。
例如,C:根目录下一批处理文件名为f.bat,内容为 format
%1
则如果执行C:\>f a: 则实际执行的是format
a:
又如C:根目录下一批处理文件的名为t.bat,内容为 type
%1 type %2
那么运行C:\>t a.txt b.txt 将顺序地显示a.txt和b.txt文件的内容
使用注册表:
REGEDIT
网络操作:
TELNET PING IPCONFIG NETSTAT ARP
在特定的时刻执行命令:
AT
相关文章推荐
- DOS下通过批处理执行sql命令
- dos和批处理命令
- DOS命令(5) 批处理命令
- DOS常用命令与批处理使用大全
- 【Shell DOS BAT文件】批处理命令
- DOS下通过批处理执行sql命令
- DOS命令(cmd)批处理:替换字符串、截取字符串、扩充字符串、获取字符串长度
- DOS命令集锦(2)使用批处理文件
- dos(bat)(批处理)命令详解【转】
- [整理修改] DOS 批处理命令判断操作系统版本 执行各版本对应语句
- 使用dos批处理文件的几个高级命令,判断
- 复习DOS及批处理命令
- DOS内部命令和批处理命令列表
- dos命令 和 批处理
- DOS 批处理命令(Batch commands)使用说明 If 命令
- 批处理及DOS的一些重要命令 很容易忽略
- 应用dos批处理文件经常用到的DOS常用命令
- DOS内部命令和批处理命令列表
- dos命令批处理学习之符号
- DOS和批处理基本命令