文档库 最新最全的文档下载
当前位置:文档库 › DOS批处理高级教程

DOS批处理高级教程

DOS批处理高级教程
DOS批处理高级教程

DOS批处理高级教程

(以下内容来源网络,请各位仔细阅读,好进入下节的实例说明)

======================================================

批处理的常见命令(未列举的命令还比较多,请查阅帮助信息)

1、REM 和::

2、ECHO 和@

3、PAUSE

4、ERRORLEVEL

5、TITLE

6、COLOR

7、mode 配置系统设备

8、GOTO 和:

9、FIND

10、START

11、assoc 和ftype

12、pushd 和popd

13、CALL

14、shift

15、IF

16、setlocal 与变量延迟

17、ATTRIB 显示或更改文件属性

介绍命令

1、REM 和::

REM 为注释命令,一般用来给程序加上注解,该命令后的内容不被执行,但能回显。

其次, :: 也可以起到rem 的注释作用, 而且更简洁有效; 但有两点需要注意:

第一, 任何以冒号:开头的字符行, 在批处理中都被视作标号, 而直接忽略其后的所有内容。

有效标号:冒号后紧跟一个以字母数字开头的字符串goto 语句可以识别。

无效标号:冒号后紧跟一个非字母数字的一个特殊符,goto 无法识别的标号,可以起到注释作用,所以::

常被用作注释符号,其实:+ 也可起注释作用。

第二, 与rem 不同的是, ::后的字符行在执行时不会回显, 无论是否用echo on 打开命令行回显状态, 因为

命令解释器不认为他是一个有效的命令行, 就此点来看, rem 在某些场合下将比:: 更为适用; 另外, rem

可以用于config.sys 文件中。

行内注释格式:%注释内容% (不常用,慎用)

2、ECHO 和@

@字符放在命令前将关闭该命令回显,无论此时echo 是否为打开状态。

echo 命令的作用列举如下:

(1)打开回显或关闭回显功能

格式:echo [{ on|off }]

如果想关闭揈CHO OFF斆 钚凶陨淼南允荆 蛐枰 诟妹 钚星凹由蠐@敗?

(2)显示当前ECHO 设置状态

格式:echo

(3)输出提示信息

格式:ECHO 信息内容

上述是ECHO 命令常见的三种用法,也是大家熟悉和会用的,但作为DOS 命令淘金者你还应该知道下

面的技巧:

(4)关闭DOS 命令提示符

在DOS 提示符状态下键入ECHO OFF,能够关闭DOS 提示符的显示使屏幕只留下光标,直至键入

ECHO ON,提示符才会重新出现。

(5)输出空行,即相当于输入一个回车

格式:ECHO.

值得注意的是命令行中的摚當要紧跟在ECHO 后面中间不能有空格,否则摚當将被当作提示信息输出到

屏幕。另外摚當可以用,:;敚痆\]+等任一符号替代。

命令ECHO.输出的回车,经DOS 管道转向可以作为其它命令的输入,比

如echo.|time 即相当于在TIME

命令执行后给出一个回车。所以执行时系统会在显示当前时间后,自动返回到DOS 提示符状态(6)答复命令中的提问

格式:ECHO 答复语|命令文件名

上述格式可以用于简化一些需要人机对话的命(如:CHKDSK/F;FORMAT Drive:;del *.*)的操作,

它是通过DOS 管道命令把ECHO 命令输出的预置答复语作为人机对话命令的输入。下面的例子就相当于

在调用的命令出现人机对话时输入揧敾爻担?

C:>ECHO Y|CHKDSK/F

C:>ECHO Y|DEL A :*.*

(7)建立新文件或增加文件内容

格式:ECHO 文件内容>文件名

ECHO 文件内容>>文件名

例如:

C:>ECHO @ECHO OFF>AUTOEXEC.BAT 建立自动批处理文件

C:>ECHO C:\CPAV\BOOTSAFE>>AUTOEXEC.BAT 向自动批处理文件中追加内容

C:>TYPE AUTOEXEC.BAT 显示该自动批处理文件

@ECHO OFF

C:\CPAV\BOOTSAFE

(8)向打印机输出打印内容或打印控制码

格式:ECHO 打印机控制码>PRN

ECHO 打印内容>PRN

下面的例子是向M-1724 打印机输入打印控制码。<Alt>156 是按住Alt 键在小键盘键入156,类似情况

依此类推:

C:>ECHO +156+42+116>PRN(输入下划线命令FS*t)

C:>ECHO +155@>PRN(输入初始化命令ESC@)

C:>ECHO.>PRN(换行)

(9)使喇叭鸣响

C:>ECHO ^G

揯G斒窃?dos 窗口中用Ctrl+G 或Alt+007 输入,输入多个^G 可以产生多声鸣响。使用方法是直接将其

加入批处理文件中或做成批处理文件调用。

这里的揯G斒粲谔厥夥 诺氖褂茫 肟幢疚暮竺娴恼陆?

3、PAUSE

PAUSE,玩游戏的人都知道,暂停的意思

在这里就是停止系统命令的执行并显示下面的内容。

例:

PAUSE

运行显示:

请按任意键继续. . .

要显示其他提示语,可以这样用:

Echo 其他提示语& pause > nul

4、errorlevel

程序返回码

echo %errorlevel%

每个命令运行结束,可以用这个命令行格式查看返回码

用于判断刚才的命令是否执行成功

默认值为0,一般命令执行出错会设errorlevel 为 1

5、title

设置cmd 窗口的标题

title 新标题#可以看到cmd 窗口的标题栏变了

6、COLOR

设置默认的控制台前景和背景颜色。

COLOR [attr]

attr 指定控制台输出的颜色属性

颜色属性由两个十六进制数字指定-- 第一个为背景,第二个则为前景。每个数字可以为以下任何值之一:

0 = 黑色8 = 灰色

1 = 蓝色9 = 淡蓝色

2 = 绿色 A = 淡绿色

3 = 湖蓝色 B = 淡浅绿色

4 = 红色 C = 淡红色

5 = 紫色 D = 淡紫色

6 = 黄色 E = 淡黄色

7 = 白色 F = 亮白色

如果没有给定任何参数,该命令会将颜色还原到CMD.EXE 启动时的颜色。这个值来自当前控制台窗口、/T 开关或DefaultColor 注册表值。

如果用相同的前景和背景颜色来执行COLOR 命令,COLOR 命令会将ERRORLEVEL 设置为1。

例如: "COLOR fc" 在亮白色上产生亮红色

7、mode 配置系统设备

配置系统设备。

串行口: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]

[to=on|off] [xon=on|off] [odsr=on|off]

[octs=on|off] [dtr=on|off|hs]

[rts=on|off|hs|tg] [idsr=on|off]

设备状态: MODE [device] [/STATUS]

打印重定向: MODE LPTn[:]=COMm[:]

选定代码页: MODE CON[:] CP SELECT=yyy

代码页状态: MODE CON[:] CP [/STATUS]

显示模式: MODE CON[:] [COLS=c] [LINES=n]

击键率: MODE CON[:] [RATE=r DELAY=d]

例:

mode con cols=113 lines=15 & color 9f

此命令设置DOS 窗口大小:15 行,113 列

8、GOTO 和:

GOTO 会点编程的朋友就会知道这是跳转的意思。

在批处理中允许以?XXX斃垂菇ㄒ桓霰旰牛 缓笥?GOTO XXX 跳转到标号:XXX 处,然后执行标号后的命

令。

例:

if {%1}=={} goto noparms

if "%2"=="" goto noparms

标签的名字可以随便起,但是最好是有意义的字符串啦,前加个冒号用来表示这个字符串是标签,goto 命

令就是根据这个冒号(:)来寻找下一步跳到到那里。最好有一些说明这样你别人看起来才会理解你的意

啊。

例:

@echo off

:start

set /a var+=1

echo %var%

if %var% leq 3 GOTO start

pause

运行显示:

1

2

3

4

休息以下

----------------------------

遭遇失事的外星人

----------------------------

来无影去无踪的UFO 困扰了人类很长时间。可现在人们发现,功能特异的外星人也会有失事的时候。前苏

联科学家杜朗诺克博士曾透露,1987 年11 月,一支前苏联沙漠考察队在沙漠里发现了一个直径22.87 米

的碟状飞行器。飞碟引擎保持完好,里面有14 具已经风干成木乃伊的外星人遗体。1947 年7 月 6 日夜,

美国新墨西哥州小镇罗兹维尔附近风雨大作,电闪雷鸣。第二天天睛后,人们发现了一个圆形的东西躺在

草丛里。驻扎在附近的空军迅速赶来,封锁了现场。负责人马赛尔上尉详细地检查了该物体的状况。它直

径足有10 米,分为内、外两个舱。令他大吃一惊的是,舱内的座椅上竟然有 4 具类人生物的尸体。它们

身高仅有 1 米左右,皮肤白而细腻,头很大,鼻子很长,嘴很小。手上只有 4 个指头,指间

有蹼相连。它

们身穿黑色有金属光泽的外套,但是质地很柔软。这一发现震惊了军方,五角大楼立即下令封锁消息,但

消息灵通的记者已经将此新闻发布了出去。许多当地人都证实确实有飞碟在罗兹维尔附近坠毁。棗棗选自《世界未解之谜》

9、find

在文件中搜索字符串。

FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "string" [[drive:][path]filename[ ...]]

/V 显示所有未包含指定字符串的行。

/C 仅显示包含字符串的行数。

/N 显示行号。

/I 搜索字符串时忽略大小写。

/OFF[LINE] 不要跳过具有脱机属性集的文件。

"string" 指定要搜索的文字串,

[drive:][path]filename

指定要搜索的文件。

如果没有指定路径,FIND 将搜索键入的或者由另一命令产生的文字。

Find 常和type 命令结合使用

Type [drive:][path]filename | find "string" [>tmpfile] #挑选包含string 的行Type [drive:][path]filename | find /v "string" #剔除文件中包含string 的行Type [drive:][path]filename | find /c #显示文件行数

以上用法将去除find 命令自带的提示语(文件名提示)

例:

@echo off

echo 111 >test.txt

echo 222 >>test.txt

find "111" test.txt

del test.txt

pause

运行显示如下:

---------- TEST.TXT

111

请按任意键继续. . .

例:

@echo off

echo 111 >test.txt

echo 222 >>test.txt

type test.txt|find "111"

del test.txt

pause

运行显示如下:

111

请按任意键继续. . .

学习久了,容易瞌睡,清醒清醒,请看:

----------------------------

月球上有轰炸机吗

----------------------------

1987 年3 月,前苏联的一颗人造卫星拍摄到的月球照片上,出现了一架第二次世界大战时期的英国轰

机。这架飞机机身和机翼上有明显的英国空军标志,飞机有些地方已被陨石损坏,但机体完整,机身上布

满青苔。它停放在月球的火山口上。照片清晰,令人不容置疑。消息传出后,立即成为轰动世界的头号新

闻。但是,正当科学家们紧锣密鼓地展开研究时,1988 年7 月22 日,负责观察的人报告说:这架轰炸机

失踪,在原来的地方没有发现它的影子。轰炸机的突然出现,又忽然间消失得无影无踪,引起了科学家们

的种种猜测。有人开始怀疑前苏联人造卫星拍到的照片上根本没有什么轰炸机,但是拿来照片重新细看,

它明明清清楚楚地呈现在人们面前,到底是不是真事?那么现在它又在哪里?这给本来就很神秘的这架轰

炸机又增添了更为神秘的色彩。

棗棗选自《世界未解之谜》

10、start 命令

批处理中调用外部程序的命令(该外部程序在新窗口中运行,批

处理程序继续往下执行,不理会外部程序

的运行状况),如果直接运行外部程序则必须等外部程序完成后才继续执行剩下的指令

例:start explorer d:\

调用图形界面打开 D 盘

11、assoc 和ftype

文件关联

assoc 设置'文件扩展名'关联,关联到'文件类型'

ftype 设置'文件类型'关联,关联到'执行程序和参数'

当你双击一个.txt 文件时,windows 并不是根据.txt 直接判断用notepad.exe 打开

而是先判断.txt 属于txtfile '文件类型'

再调用txtfile 关联的命令行txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1

可以在"文件夹选项"→"文件类型"里修改这 2 种关联

assoc #显示所有'文件扩展名'关联

assoc .txt #显示.txt 代表的'文件类型',结果显示.txt=txtfile

assoc .doc #显示.doc 代表的'文件类型',结果显示.doc=Word.Document.8 assoc .exe #显示.exe 代表的'文件类型',结果显示.exe=exefile

ftype #显示所有'文件类型'关联

ftype exefile #显示exefile 类型关联的命令行,结果显示exefile="%1" %* assoc .txt=Word.Document.8

设置.txt 为word 类型的文档,可以看到.txt 文件的图标都变了

assoc .txt=txtfile

恢复.txt 的正确关联

ftype exefile="%1" %*

恢复exefile 的正确关联

如果该关联已经被破坏,可以运行https://www.wendangku.net/doc/5b7816275.html, ,再输入这条命令

12、pushd 和popd

切换当前目录

@echo off

c: & cd\ & md mp3 #在C:\ 建立mp3 文件夹

md d:\mp4 #在D:\ 建立mp4 文件夹

cd /d d:\mp4 #更改当前目录为d:\mp4

pushd c:\mp3 #保存当前目录,并切换当前目录为c:\mp3

popd #恢复当前目录为刚才保存的d:\mp4

一般用处不大,在当前目录名不确定时,会有点帮助。(dos 编程中很有用)

13、CALL

CALL 命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后,再继续执行原来的批

处理

CALL command

调用一条批处理命令,和直接执行命令效果一样,特殊情况下很有用,比如变量的多级嵌套,见教程后面。

在批处理编程中,可以根据一定条件生成命令字符串,用call 可以执行该字符串,见例子。

CALL [drive:][path]filename [batch-parameters]

调用的其它批处理程序。filename 参数必须具有.bat 或.cmd 扩展名。

CALL :label arguments

调用本文件内命令段,相当于子程序。被调用的命令段以标签:label 开头

以命令goto :eof 结尾。

另外,批脚本文本参数参照(%0、%1、等等)已如下改变:

批脚本里的%* 指出所有的参数(如%1 %2 %3 %4 %5 ...)

批参数(%n)的替代已被增强。您可以使用以下语法:(看不明白的直接运行后面的例子

%~1 - 删除引号("),扩充%1

%~f1 - 将%1 扩充到一个完全合格的路径名

%~d1 - 仅将%1 扩充到一个驱动器号

%~p1 - 仅将%1 扩充到一个路径

%~n1 - 仅将%1 扩充到一个文件名

%~x1 - 仅将%1 扩充到一个文件扩展名

%~s1 - 扩充的路径指含有短名

%~a1 - 将%1 扩充到文件属性

%~t1 - 将%1 扩充到文件的日期/时间

%~z1 - 将%1 扩充到文件的大小

%~$PATH : 1 - 查找列在PATH 环境变量的目录,并将%1

扩充到找到的第一个完全合格的名称。如果环境

变量名未被定义,或者没有找到文件,此组合键会

扩充到空字符串

可以组合修定符来取得多重结果:

%~dp1 - 只将%1 扩展到驱动器号和路径

%~nx1 - 只将%1 扩展到文件名和扩展名

%~dp$PATH:1 - 在列在PATH 环境变量中的目录里查找%1,

并扩展到找到的第一个文件的驱动器号和路径。

%~ftza1 - 将%1 扩展到类似DIR 的输出行。

在上面的例子中,%1 和PATH 可以被其他有效数值替换。

%~ 语法被一个有效参数号码终止。%~ 修定符不能跟%*使用

注意:参数扩充时不理会参数所代表的文件是否真实存在,均以当前目录进行扩展要理解上面的知识,下面的例子很关键。

例:

@echo off

Echo 产生一个临时文件> tmp.txt

Rem 下行先保存当前目录,再将c:\windows 设为当前目录

pushd c:\windows

Call :sub tmp.txt

Rem 下行恢复前次的当前目录

Popd

Call :sub tmp.txt

pause

Del tmp.txt

exit

:sub

Echo 删除引号:%~1

Echo 扩充到路径:%~f1

Echo 扩充到一个驱动器号:%~d1

Echo 扩充到一个路径:%~p1

Echo 扩充到一个文件名:%~n1

Echo 扩充到一个文件扩展名:%~x1

Echo 扩充的路径指含有短名:%~s1

Echo 扩充到文件属性:%~a1

Echo 扩充到文件的日期/时间:%~t1

Echo 扩充到文件的大小:%~z1

Echo 扩展到驱动器号和路径:%~dp1

Echo 扩展到文件名和扩展名:%~nx1

Echo 扩展到类似DIR 的输出行:%~ftza1

Echo.

Goto :eof

例:

set aa=123456

set cmdstr=echo %aa%

call %cmdstr%

pause

本例中如果不用call,而直接运行%cmdstr%,将显示结果%aa%,而不是123456 14、shift

更改批处理文件中可替换参数的位置。

SHIFT [/n]

如果命令扩展名被启用,SHIFT 命令支持/n 命令行开关;该命令行开关告

命令从第n 个参数开始移位;n 介于零和

八之间。例如:

SHIFT /2

会将%3 移位到%2,将%4 移位到%3,等等;并且不影响%0 和%1。

枯燥的学习让人烦躁,休息一下,请看:

----------------

神奇的摵5兹藬

----------------

几十年来,高级生物在地球各大水域出现的传闻层出不穷,一些科学家推测,海底可能有高度文明的生物

存在,即在海洋深处的某些地方可能生活着一些智力高度发达的生命体棗摵5兹藬。在众多传闻之中,

最令人惊奇的是1959 年初,在波兰丁尼亚港发现的海底人。当时他正筋疲力尽地走在沙滩上,人们把他

送到附近的学校医院进行治疗时,发现这古怪的病人穿着没有开口的金属衣裳,此人的手指和脚趾与普通

人不同,他的血液循环系统和器官并非人类所有。当人们打算对他进一步研究时,这个怪人突然之间杳如

黄鹤,一去不复返。

棗棗选自《世界未解之谜》

15、IF

IF 条件判断语句,语法格式如下:

IF [NOT] ERRORLEVEL number command

IF [NOT] string1==string2 command

IF [NOT] EXIST filename command

下面逐一介绍,更详细的分析请看后面章节。

(1) IF [NOT] ERRORLEVEL number command

IF ERRORLEVEL 这个句子必须放在某一个命令的后面,执行命令后由IF ERRORLEVEL 来判断命令的

返回值。

Number 的数字取值范围0~255,判断时值的排列顺序应该由大到小。返回的值大于等于指定的值时,条

件成立

例:

@echo off

dir c:

rem 退出代码为>=1 就跳至标题1 处执行,>=0 就跳至标题0 处执行

IF ERRORLEVEL 1 goto 1

IF ERRORLEVEL 0 goto 0

Rem 上面的两行不可交换位置,否则失败了也显示成功。

echo 命令执行成功!

Rem 程序执行完毕跳至标题exit 处退出

goto exit

:1

echo 命令执行失败!

Rem 程序执行完毕跳至标题exit 处退出

goto exit

:exit

pause

运行显示:命令执行成功!

(2) IF [NOT] string1==string2 command

string1 和string2 都为字符的数据,英文内字符的大小写将看作不同,这个条件中的等于号必须是两个(绝

对相等的意思)

条件相等后即执行后面的command

检测当前变量的值做出判断,为了防止字符串中含有空格,可用以下格式

if [NOT] {string1}=={string2} command

if [NOT] [string1]==[string2] command

if [NOT] "string1"=="string2" command

这种写法实际上将括号或引号当成字符串的一部分了,只要等号左右两边一致就行了,比如下面的写法就

不行:

if {string1}==[string2] command

(3) IF [NOT] EXIST filename command

EXIST filename 为文件或目录存在的意思

echo off

IF EXIST autoexec.bat echo 文件存在!

IF not EXIST autoexec.bat echo 文件不存在!

这个批处理大家

可以放在C 盘和D 盘分别执行,看看效果

16、setlocal 与变量延迟

本条内容引用[英雄出品]的批处理教程:

要想进阶,变量延迟是必过的一关!所以这一部分希望你能认真看

为了更好的说明问题,我们先引入一个例子。

例1:

@echo off

set a=4

set a=5 & echo %a%

pause

结果:4

解说:为什么是 4 而不是 5 呢?在echo 之前明明已经把变量 a 的值改成 5 了?

让我们先了解一下批处理运行命令的机制:

批处理读取命令时是按行读取的(另外例如for 命令等,其后用一对圆括号闭合的所有语句也当作一行,

在处理之前要完成必要的预处理工作,这其中就包括对该行命令中的变量赋值。我们现在分析一下例1,

批处理在运行到这句搒et a=5 & echo %a%斨 埃 劝颜庖痪湔 涠寥〔⒆隽嗽ご 項椂员淞?a 赋了

值,那么%a%当然就是 4 了!(没有为什么,批处理就是这样做的。)

而为了能够感知环境变量的动态变化,批处理设计了变量延迟。简单来说,在读取了一条完整的语句之后,

不立即对该行的变量赋值,而会在某个单条语句执行之前再进行赋值,也就是说撗映贁了对变量

的赋值。

那么如何开启变量延迟呢?变量延迟又需要注意什么呢?举个例子说明一下

例2:

@echo off

setlocal enabledelayedexpansion

set a=4

set a=5 & echo !a!

pause

结果:5

解说:启动了变量延迟,得到了正确答案。变量延迟的启动语句是搒etlocal enabledelayedexpansion敚 ?

且变量要用一对叹号?!斃ㄆ鹄矗ㄗ⒁庖 糜⑽牡奶竞牛 裨蚓兔挥斜淞垦映俚男Ч ?

分析一下例2,首先搒etlocal enabledelayedexpansion斂 舯淞垦映伲 缓髶set a=4斚雀 淞?a 赋值为

4,搒et a=5 & echo !a!斦饩涫歉 淞?a 赋值为5 并输出(由于启动了变量延迟,所以批处理能够感知到动

态变化,即不是先给该行变量赋值,而是在运行过程中给变量赋值,因此此时 a 的值就是 5 了)。

再举一个例子巩固一下

例3:

@echo off

setlocal enabledelayedexpansion

for /l %%i in (1,1,5) do (

set a=%%i

echo !a!

)

pause

结果:

1

2

3

4

5

解说:本例开启了变量延迟并用?!斀 淞坷┢鹄矗 虼说玫轿颐窃て诘慕峁 H绻 挥帽淞垦映倩岢鱿质?

么结果呢?结果是这样的:

ECHO 处于关闭状态。

ECHO 处于关闭状态。

ECHO 处于关闭状态。

ECHO 处于关闭状态。

ECHO 处于关闭状态。

即没有感知到for 语句中的动态变化。

提示:在没有开启变量延迟的情况下,某条命令行中的变量改变,必须到下一条命令才能体现。这一点也

可以加以利用,看例子。

例:交换

两个变量的值,且不用中间变量

@echo off

::目的:交换两个变量的值,但是不使用临时变量

::Code by JM 2007-1-24 CMD@XP

::出处:https://www.wendangku.net/doc/5b7816275.html,/forum/viewthread.php?tid=27078

set var1=abc

set var2=123

echo 交换前:var1=%var1% var2=%var2%

set var1=%var2%& set var2=%var1%

echo 交换后:var1=%var1% var2=%var2%

pause

17、ATTRIB 显示或更改文件属性

ATTRIB [+R|-R] [+A|-A] [+S|-S] [+H|-H] [[drive:] [path] filename] [/S [/D]]

+ 设置属性。

- 清除属性。

R 只读文件属性。

A 存档文件属性。

S 系统文件属性。

H 隐藏文件属性。

[drive:][path][filename]

指定要处理的文件属性。

/S 处理当前文件夹及其子文件夹中的匹配文件。

/D 也处理文件夹。

例:

md autorun

attrib +a +s +h autorun

上面的命令将建立文件夹autorun,然后将其设为存档、系统、隐藏属性

大自然中的很多神奇现象令人惊叹不已:

----------------------------

神奇的龙卷风

----------------------------

龙卷风外貌奇特,它上部是一块乌黑或浓灰的积雨云,下部是下垂着的形如大象鼻子的漏斗状云柱,具有

小、快、猛、短的特点。龙卷风通常是极其迅速的,风速一般每秒50 米至100 米,有时可达每秒300 米,

甚至超过声速(340 米/秒)。它像一个巨大的吸尘器,经过地面,地面的一切都要被它卷走;经过水库

河流,常卷起冲天水柱,有时连水库、河流的底部都露了出来。同时,龙卷风维持时间一般很短,往往只

有几分钟或几十分钟,最多几小时,一般移动10 米到10 千米,便撌僦照 迶了。龙卷风还有一些摴殴中?

为敚 谷四岩宰矫 K 沓钦颍 坊俜课荩 淹氤鞔右桓龅胤焦蔚搅硪桓龅兀 疵挥写蛩橥

DOS批处理脚本

DOS批处理脚本 这是一篇技术教程,真心诚意会用很简单的文字表达清楚自己的意思,只要你识字就能看懂,就能学到知识。写这篇教程的目的,是让每一个看过这些文字的朋友记住一句话:如果爱可以让事情变的更简单,那么就让它简单吧!看这篇教程的方法,就是慢!慢慢的,如同品一个女人、一杯茗茶,你会发现很多以前就在眼前的东西突然变的很遥远,而有些很遥远的东西却又突然回到了眼前。. 先概述一下批处理是个什么东东。批处理的定义,至今我也没能给出一个合适的----众多高手们也都没给出----反正我不知道----看了我也不一定信服----我是个菜鸟,当然就更不用说了;但我想总结出一个“比较合适的”,而且我也相信自己可以把它解释的很清楚,让更多的菜鸟都知道这是个什么东东,你用这个东东可以干什么事情。或许你会因为这篇文章而“无条件爱上批处理”,那么我的目的就达到了----我就是要让你爱上它,我就这么拽,你能怎么着??真的,爱有时候就这么拽,就是这么没理由,就是这么不要脸!真的! 按照我的理解,批处理的本质,是一堆DOS命令按一定顺序排列而形成的集合。 OK,never claver and get to business(闲话少说言归正传)。批处理,也称为批处理脚本,英文译为BATCH,批处理文件后缀BAT就取的前三个字母。它的构成没有固定格式,只要遵守以下这条就ok了:每一行可视为一个命令,每个命令里可以含多条子命令,从第一行开始执行,直到最后一行结束,它运行的平台是DOS。批处理有一个很鲜明的特点:使用方便、灵活,功能强大,自动化程度高。我不想让自己写的教程枯燥无味,因为牵缠到代码(批处理的内容算是代码吧?)的问题本来就是枯燥的,很少有人能面对满屏幕的代码而静下心来。所以我会用很多简单实用的例子让读这篇教程的朋友去体会批处理的那四射的魅力,感受它那古灵精怪的性格,不知不觉中爱上批处理(晕,怎么又是爱?到底批处理和爱有什么关系?答案:没有!)。再说句“闲话”:要学好批处理,DOS基础一定要牢!当然脑子灵活也是很重要的一方面。 例一、先给出一个最easy的批处理脚本让大家和它混个脸熟,将下面的几行命令保存为name.bat然后执行(以后文中只给出代码,保存和执行方式类似): ping https://www.wendangku.net/doc/5b7816275.html, > a.txt ping https://www.wendangku.net/doc/5b7816275.html, >> a.txt ping https://www.wendangku.net/doc/5b7816275.html, >> a.txt ping https://www.wendangku.net/doc/5b7816275.html, >> a.txt ping https://www.wendangku.net/doc/5b7816275.html, >> a.txt

MS-DOS批处理文件详解

MS---DOS批处理文件 批处理文件或批处理程序是一个包含若干MS-DOS命令的正文文件,扩展名为.BAT。当在命令提示符下敲入批处理程序的名称时,MS-DOS 成组执行此批处理程序中的命令。 任何在命令提示符下可使用的命令都可用在批处理程序中。此外,下面MS-DOS命令是专门在批处理程序中使用的。 ====================================================== ========== 常用命令 echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。 ==== willsort 编注=================================================== 首先, @ 不是一个命令, 而是DOS 批处理的一个特殊标记符, 仅用于屏蔽命令行回显. 下面是DOS命令行或批处理中可能会见到的一些特殊标记符: CR(0D) 命令行结束符 Escape(1B) ANSI转义字符引导符 Space(20) 常用的参数界定符 Tab(09) ; = 不常用的参数界定符 + COPY命令文件连接符

* ? 文件通配符 '' 字符串界定符 | 命令管道符 < > >> 文件重定向符 @ 命令行回显屏蔽符 / 参数开关引导符 : 批处理标签引导符 % 批处理变量引导符 其次, :: 确实可以起到rem 的注释作用, 而且更简洁有效; 但有两点需要注意: 第一, 除了:: 之外, 任何以:开头的字符行, 在批处理中都被视作标号, 而直接忽略其后的所有内容, 只是为了与正常的标号相区别, 建议使用goto 所无法识别的标号, 即在:后紧跟一个非字母数字的一个特殊符号. 第二, 与rem 不同的是, ::后的字符行在执行时不会回显, 无论是否用echo on打开命令行回显状态, 因为命令解释器不认为他是一个有效的命令行, 就此点来看, rem 在某些场合下将比:: 更为适用; 另外, rem 可以用于config.sys 文件中. ====================================================== ========== echo 表示显示此命令后的字符 echo off 表示在此语句后所有运行的命令都不显示命令行本身 @与echo off相象,但它是加在每个命令行的最前面,表示运行时不显

dos批处理start命令的参数bat脚本运行完毕后自动关闭窗口

Dos批处理Start命令的参数,bat脚本运行完毕后自动关闭 窗口 Dos批处理命令bat文件运行完以后自动关闭dos窗口的方法: 很多人运行完批处理命令发现dos窗口不能自动关闭,那是因为你在bat文件中直接执行了需要运行的某些外部程序,如果希望dos窗口自动关闭,那么,你可以使用start命令 来执行该外部程序,而不是直接写上一行来执行。例子说明: view plain copy start "CS" "c:\programme files\cs\half-life.exe" "/m" 上面只是一个使用格式的例子,即start "给窗口随便命个名" "带完整路径的程序程序" "程序需 要传递的参数串(可省略)" 当然,在你的批处理文件末尾,最好不要忘记加上一行:EXIT。请问Start命令中的/w参数怎么用? 我知道/w的大概意思是不回到提示符转到其它的程序。我想执行一条命令:即运行完DIR后再执行其它命令START dir cd c:\ /w。这条命令只能执行到DIR便不再执行下去了,是我的命令写错了吗? 另请问在START命令中为什么不能执行内部命令,我的DIR 是做了一条批处理的。

【参考回复】 请注意,Start会开启新窗口来运行程序,如果新窗口不正常退出,你的批处理就不能正常执行下去,所以如果你要用Start启用dir命令,一定要将dir命令写入一个批处理文件中,然后在批处理文件的最后面加上exit命令。正确的用法应该是这样: 1、建立使用dir命令的批处理如:test.bat view plain copy @echo off dir c:\ rem ....其它操作 exit 2、在另一个批处理中调用该批处理: view plain copy ... start /wait call test.bat ... 其实在这里就没有必要使用start /wait了,因为使用了call命令后,test.bat已经控制了流程,一定是在call结束后才会继续下一步的操作。 Start语法:启动另一个窗口运行指定的程序或命令。 view plain copy START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]

DOS批处理命令大全

写批处理 扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。 ==== willsort 编注======================================= .bat是dos下的批处理文件 .cmd是nt内核命令行环境的另一种批处理文件 从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。所以从某个程度分析,batch, unix shell, awk, basic, perl 等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同而已。甚至有些应用程序仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全不同。 =================================== 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS 提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。 ==== willsort 题注=================== 批处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普通数据性文件,这缘于wind ows系统这个新型解释平台的涉入,使得批处理的应用越来越"边缘化"。所以我们讨论的批处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动。 ======================== 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。 ==== willsort 编注================== 批处理文件(batch file)也可以称之为批处理程序(batch program),这一点与编译型语言有所不同,就c语言来说,扩展名为c或者cpp的文件可以称之为c语言文件或者c语言源代码,但只有编译连接后的exe 文件才可以称之为c语言程序。因为批处理文件本身既具有文本的可读性,又具有程序的可执行性,这些称谓的界限是比较模糊的。 =========================== 第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个良好的习惯是在硬盘上建立一个bat或者batch目录(例如C:\BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:\batch,你就可以在任意位置运行所有你编写的批处理程序。 ==== willsort 编注===== 纯以dos系统而言,可执行程序大约可以细分为五类,依照执行优先级由高到低排列分别是:DOSKEY宏命令(预先驻留内存),https://www.wendangku.net/doc/5b7816275.html,中的内部命令(根据内存的环境随时进驻内存),以com为扩

DOS编程及命令

DOS批处理文件 DOS下的可执行文件有三种,分别是EXE,COM和BAT。其中,EXE和COM文件都是二进制形式的,只有BAT文件是文本形式的,可以直接阅读。因此,BAT文件和以上二进制可执行文件相比,内容要简单的多。这些文件内包含着DOS命令的集合,通常叫作批处理文件。批处理文件的组成虽然比较简单,但其用处非常大,使用也比较广泛。比如每次都执行一些相同的命令,您一定会觉得非常麻烦,而放在批处理文件中执行的话则轻松得多。AUTOEXEC.BAT就是一个特殊的批处理文件,它在DOS的启动时自动运行,在系统的配置中发挥着非常大的作用。因此,要学好DOS,就要学好批处理文件。下面介绍批处理文件的命令及其使用。 DOS自带的批处理命令: @ :将这个符号放在批文件中其它命令的前面,运行时将不显示命令本身。如@ECHO OFF 命令就在批文件首经常用到。 CALL :从一个批文件中调用另一个批文件,调用完后继续执行原来的批文件。 用法:CALL [批文件名] 注:也可以使用COMMAND /C命令完成同样的操作。 CHOICE:选择命令。这是一个DOS外部命令,但它主要用在批文件中。CHOICE命令执行后将提示可选择的项目,这时通过一个按键来选则。 用法:CHOICE:[/C[:]按键表] [/N] [/S] [/T[:]选择值,秒数] [显示文本] 其中,/C表示可选则的按键,/N表示不要显示提示信息,/S表示大小写字符敏感方式,/T表示若在批定的时间内没有选则的话,自动执行/C中定义的某个选择值。显示文本是CHOICE命令执行时的提示信息。选择结果将用ERRORLEVEL值来表示。 ECHO:显示指定的信息。通常显示在屏幕上。 如ECHO Hello将在屏幕上显示Hello的字样。 另外,ECHO ON|OFF用来设置在批文件执行时是否显示命令本身。而ECHO OFF与@的意思一样,但它是一个单独的命令,而不能像@那样放在其它命令之前。 FOR:对于指定的文件运行相应的命令。 大家知道,DOS下许多命令支持通配符,如?和*,可以一次指定一批文件,非常方便。然而,并非所有的DOS命令都支持通配符,如TYPE(文件内容显示命令)就不支持。有了FOR命令就没有关系了,利于它可以使TYPE命令可以一次显示多个文件。 用法:FOR %变量名IN (文件集)DO 命令[命令参数] 注:以上是FOR命令的固定形式,IN和DO的位置必须正确,否则将提示语法错误。 如FOR %F IN (*.*) DO TYPE %F命令就可以实现TYPE命令一次显示多个文件。 注:%F是变量名,也可用%G等代替,但前后必须一致。在批文件中用%%F代替。 GOTO:转到批文件内部的某个标号下执行。 大家知道,在编程中往往需要重复或跳转到某个地方继续执行,如BASIC语言中的GOTO命令。批文件中的GOTO命令也可以完成类似的功能。

MS-DOS及Windows批处理文件的制作方法

MS-DOS及Windows批处理文件的制作方法 批处理文件是无格式的文本文件,现在无盘清理基本都是靠它实现的,因为简单实用,它可以通过记事本编辑或者在命令提示符下使用edit命令编辑。下面就是方便大家怎样创建批处理文件的: 一简单批处理内部命令简介 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。 语法 echo [{on|off}] [message] Sample:@echo off / echo hello world 在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。 2.@ 命令 表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。 Sample:@echo off @echo Now initializing the program,please wait a minite... @format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。) 3.Goto 命令 指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。 语法:goto label (label是参数,指定所要转向的批处理程序中的行。) Sample: if {%1}=={} goto noparms if {%2}=={} goto noparms(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。) @Rem check parameters if null show usage :noparms echo Usage: monitor.bat ServerIP PortNumber goto end 标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是

DOS批处理教程精选简单易懂

从简单学起 echo、@、call、pause、rem 是批处理文件最常用的几个命令,我们就从他 们开始学起。echo 表示显示此命令后的字符 echo off 表示在此语句后所有运行的命令都不显示命令行本身@与echo off 相象,但它是加在其它命令行的最前面,表示运行时不显示命令行本身。 call 调用另一条批处理文件(如果直接调用别的批处理文件,执行完那条文件后将无法执行当前文件后续命令) pause 运行此句会暂停,显示Press any key to continue..等. 待用户按任意键后继续 rem 表示此命令后的字符为解释行,不执行,只是给自己今后查找用的批处理命令大全(一)第一部分:批处理的专用命令批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件, 其扩展名为BAT。这些命令统称批处理命令,下面我就来给大家介绍一下批处 理的命令。 1、REM REM 是个注释命令一般是用来给程序加上注解的,该命令后的内容在程序 执行的时候将不会被显示和执行。例: REM 你现在看到的就是注解,这一句将不会被执行。在以后的例子中解释 的内容都REM会放在REM后面。请大家注意。 2、ECHO ECHO是一个回显命令主要参数有OFF和ON,—般用ECHOmessag来显示- 个特定的消息。例: Echo off Rem以上代表关闭回显即不显示所执行的命令

Echo这个就是消息 Rem 以上代表显示“这就是消息”这列字符 执行结果: C:\> 这个就是消息。 3、GOTO GOTO即为跳转的意思。在批处理中允许以 :XXX来构建一个标号然后用GOTO 标号直接来执行标号后的命令。例 :LABEL REM上面就是名为LABEL的标号。 DIR C:\ DIR D:\ GOTO LABEL REM以上程序跳转标号LABEL处继续执行。 4、CALL CALL命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后再继续执行原来的批处理。例: 批处理内容如下: ECHO这就是2的内容 批处理内容如下: ECHO这是1的内容 CALL ECHO 1和2 的内容全部显示完成

将DOS批处理文件转换为Shell脚本

将DOS批处理文件转换为Shell脚本 相当多的在PC上学习脚本的程序员都在运行DOS。事实上,残废的DOS批处理文件语言还是可以编写出一些比较强大的脚本来的,虽然它们一般都需要借助于外部的工具。所以说,某些时候,我们还是需要将老式的DOS批处理文件转换为UNIX shell脚本。一般来说,做这种事情并不困难,因为DOS批处理文件操作不过是等价的shell脚本的一个受限子集。 1.对照表 1.1.批处理文件关键字/ 变量/ 操作符 表格 L-1

批处理文件一般都包含DOS命令。我们必须把它转换为UNIX的等价命令,这样我们才能把批处理文件转换为shell脚本文件。 1.2.命令 表格 L-2 DOS命令与UNIX的等价命令

事实上,几乎所有的UNIX和shell操作符,还有命令都有许多的选项,对比DOS 和批处理文件来说,它们要强大的多。许多DOS批处理文件都需要依靠辅助工具,比如ask。com,这是一个比read命令差很多的类似副本。 DOS对于文件名通配符扩展支持的非常有限,并且很不完整,仅仅识别*和?。 2.示例 将DOS批处理文件转换为sehll脚本,通常是一件很简单的事情,而且转换的结果通常都比原始的批处理文件好。 例子 L-1. VIEWDATA.BAT: DOS批处理文件 1 REM VIEWDATA 2 3 REM 灵感来自于例子"DOS POWERTOOLS" 4 REM PAUL SOMERSON编写 5 6 7 @ECHO OFF 8 9 IF !%1==! GOTO VIEWDATA 10 REM 如果没有命令行参数。。。 11 FIND "%1" C:\BOZO\BOOKLIST。TXT 12 GOTO EXIT0 13 REM 打印出字符串匹配的行,然后退出。 14 15 :VIEWDATA 16 TYPE C:\BOZO\BOOKLIST.TXT | MORE 17 REM 显示整个文件,一次一页。 18 19 :EXIT0 转换脚本作了一些改进。 例子 L-2. Viewdata.sh: 转换自VIEWDATA.BAT的shell脚本 1 #!/bin/bash 2 # viewdata。sh 3 # 转换自VIEWDATA.BAT的shell脚本。 4 5 DATAFILE=/home/bozo/datafiles/book-collection。data

windows批处理文件(.bat&)

bat是dos下的批处理文件 .cmd是nt内核命令行环境的另一种批处理文件 从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由 外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是 由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。 所以从某个程度分析,batch, unix shell, awk, basic, perl 等脚本语言都 是一样的,只不过应用的范围和解释的平台各有不同而已。甚至有些应用程序 仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全不同。 =================================== 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部 分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批 处理文件。 ==== 注 =================== 批处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普 通数据性文件,这缘于windows系统这个新型解释平台的涉入,使得批处理的 应用越来越"边缘化"。所以我们讨论的批处理应该限定在dos环境或者命令行 环境中,否则很多观念和设定都需要做比较大的变动。 ======================== 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分 有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括 内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。 ==== 注 ================== 批处理文件(batch file)也可以称之为批处理程序(batch program),这一点与编译型语言有所不同,就c语言来说,扩展名为c或者cpp的文件可以称之为 c语言文件或者c语言源代码,但只有编译连接后的exe文件才可以称之为c 语言程序。因为批处理文件本身既具有文本的可读性,又具有程序的可执行性,这些称谓的界限是比较模糊的。 =========================== 第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所 在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个

dos批处理命令小程序

一.简单批处理内部命令简介 先来看一个垃圾清理批处理文件吧 @echo off echo 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.tmp del /f /s /q %systemdrive%\*._mp del /f /s /q %systemdrive%\*.log del /f /s /q %systemdrive%\*.gid del /f /s /q %systemdrive%\*.chk del /f /s /q %systemdrive%\*.old del /f /s /q %systemdrive%\recycled\*.* del /f /s /q %windir%\*.bak del /f /s /q %windir%\prefetch\*.* rd /s /q %windir%\temp & md %windir%\temp del /f /q %userprofile%\recent\*.* del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"

del /f /s /q "%userprofile%\Local Settings\Temp\*.*" del /f /s /q "%userprofile%\recent\*.*" echo 清除系统垃圾完成~ echo. & pause 将上面的内容保存为*.bat就可以运行了,清理系统垃圾 下面是详细讲解 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当 前回显设置。 语法 echo [{on|off}] [message] Sample:@echo off / echo hello world 在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)

DOS批处理高级教程:第三章 FOR命令中的变量

FOR命令中有一些变量,他们的用法许多新手朋友还不太了解,今天给大家讲解他们的用法! 先把FOR的变量全部列出来: ~I - 删除任何引号("),扩展%I %~fI - 将%I 扩展到一个完全合格的路径名 %~dI - 仅将%I 扩展到一个驱动器号 %~pI - 仅将%I 扩展到一个路径 %~nI - 仅将%I 扩展到一个文件名 %~xI - 仅将%I 扩展到一个文件扩展名 %~sI - 扩展的路径只含有短名 %~aI - 将%I 扩展到文件的文件属性 %~tI - 将%I 扩展到文件的日期/时间 %~zI - 将%I 扩展到文件的大小 %~$PATH:I - 查找列在路径环境变量的目录,并将%I 扩展到找到的第一个完全合格的名称。如果环境变量名未被定义,或者没有找到文件,此组合键会扩展到空字符串 我们可以看到每行都有一个大写字母"I",这个I其实就是我们在FOR带入的变量,我们FOR语句代入的变量名是什么,这里就写什么. 比如:FOR /F %%z IN ('set') DO @echo %%z 这里我们代入的变量名是z那么我们就要把那个I改成z,例如%~fI改为%~fz

至于前面的%~p这样的内容就是语法了! 好开始讲解: 一、~I - 删除任何引号("),扩展%I 这个变量的作用就如他的说明,删除引号! 我们来看这个例子: 首先建立临时文件temp.txt,内容如下 "1111 "2222" 3333" "4444"44 "55"55"55 可建立个BAT文件代码如下:@echo off 2echo ^"1111>temp.txt 3echo "2222">>temp.txt 4echo 3333^">>temp.txt 5echo "4444"44>>temp.txt 6echo ^"55"55"55>>temp.txt 复制代码 rem 上面建立临时文件,注意不成对的引号要加转义字符^,重定向符号前不要留空格

DOS批处理命令大全

COMMAND DOS批处理命令大全 帮助文件 WING 12

目录 MOVE /? (3) COPY /? (3) DEL /? (4) AT /? (5) TIME [/T | time] (5) DATE [/T | date] (6) GOTO /? (6) CALL /? (6) FOR /? (8) SET /? (11) REG Operation /? (15) dir /? (23) md /? (24) chdir /? (24) C:\>ren /? (25) diskcopy /? (26) xcopy /? (26) path /? (30) chkdsk /? (30) format /? (31)

MOVE /? 移动文件并重命名文件和目录。 要移动至少一个文件: MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination 要重命名一个目录: MOVE [/Y | /-Y] [drive:][path]dirname1 dirname2 [drive:][path]filename1 指定您想移动的文件位置和名称。 destination 指定文件的新位置。目标可包含一个驱动器号 和冒号、一个目录名或组合。如果只移动一个文件 并在移动时将其重命名,您还可以包括文件名。 [drive:][path]dirname1 指定要重命名的目录。 dirname2 指定目录的新名称。 /Y 取消确认改写一个现有目标文件的提示。 /-Y 对确认改写一个现有目标文件发出提示。 命令行开关 /Y 可以出现在 COPYCMD 环境变量中。这可以用命令行上 的 /-Y 替代。默认值是,除非 MOVE 命令是从一个批脚本内 执行的,改写时都发出提示。 COPY /? 将一份或多份文件复制到另一个位置。 COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/A | /B ] source [/A | /B] [+ source [/A | /B] [+ ...]] [destination [/A | /B]] source 指定要复制的文件。 /A 表示一个 ASCII 文本文件。 /B 表示一个二进位文件。 /D 允许解密要创建的目标文件 destination 为新文件指定目录和/或文件名。 /V 验证新文件写入是否正确。 /N 复制带有非 8dot3 名称的文件时,

DOS批处理命令

1、*.*的简写 *.*可以用.代替,例如,删除当前目录中的全部文件∶ DEL. 2、返回父目录即上级目录 CD.. 3、把目录文件的列表存入文本文件中 DIR>filename 4、查看当前目录下任何属性的文件 方法一∶DIR, 方法二∶DIR/A 5、取消当前目录下所有文件的所有属性(实际上只能查看属性而不能取消-jm注) ATTRIB, 若在C盘根目录下执行此命令,再用DIR来查看,可以看到IO.SYS、MSDOS.SYS等隐含文件 6、显示当前目录下的所有子目录名 DIR/AD 7、连续显示多个文件的内容 COPY *.* CON 8、分屏显示文件内容 方法一∶MORE

方法二∶COPY filename+,, 10、如何屏蔽DOS行的输出信息? 方法是将屏幕输出重定向到DOS空设备NUL,例如∶ COPY MYPROG.EXE A:>NUL 11、在DOS状态下直接显示用D方式编辑的WPS文件内容 COPY filename.wps CON/B 12、向文本文件中追加数据 方法一∶COPY filename+CON 方法二∶TYPE CON>>filename 输入完毕后按F6或Ctrl+Z键结束。 13、键盘指法练习或汉字输入练习的简易屏幕 COPY CON NUL 14、直接打印键盘输入的内容 方法一∶COPY CON PRN 方法二∶MORE>PRN 方法三∶SORT>PRN 输入完毕后按F6或Ctrl+Z键。 15、DOS下直接编辑生成文件 在没有任何编辑软件(如EDLIN、EDIT等)的情况下,可临时用以下六种方法从键盘编辑生成文件,当文件内容输入完毕后,按F6键或按Ctrl+Z键存盘退出∶ 方法一∶COPY CON filename

Dos批处理 Start命令的参数

Dos批处理Start命令的参数 Dos批处理命令bat文件运行完以后自动关闭dos窗口的方法: 很多人运行完批处理命令发现dos窗口不能自动关闭,那是因为你在bat文件中直接执行了需要运行的某些外部程序,如果希望dos窗口自动关闭,那么,你可以使用start 命令来执行该外部程序,而不是直接写上一行来执行。例子说明: start "CS" "c:\programme files\cs\half-life.exe" "/m" 上面只是一个使用格式的例子,即start "给窗口随便命个名" "带完整路径的程序程序" "程序需要传递的参数串(可省略)" 当然,在你的批处理文件末尾,最好不要忘记加上一行:EXIT 请问Start命令中的/w参数怎么用? 我知道/w的大概意思是不回到提示符转到其它的程序。我想执行一条命令:即运行完DIR后再执行其它命令START dir cd c:\ /w。这条命令只能执行到DIR便不再执行下去了,是我的命令写错了吗?

另请问在START命令中为什么不能执行内部命令,我的DIR是做了一条批处理的。 『参考回复』 请注意,Start会开启新窗口来运行程序,如果新窗口不正常退出,你的批处理就不能正常执行下去,所以如果你要用Start启用dir命令,一定要将dir命令写入一个批处理文件中,然后在批处理文件的最后面加上exit命令。 正确的用法应该是这样: 1、建立使用dir命令的批处理如test.bat: @echo off dir c:\ rem ....其它操作 exit 2、在另一个批处理中调用该批处理: ... start /wait call test.bat ... 其实在这里就没有必要使用start /wait了,因为使用了call 命令后,test.bat已经控制了流程,一定是在call结束后才

批处理bat实用实例

批处理文件是无格式的文本文件,它包含一条或多条命令。 它的文件扩展名为 .bat 或 .cmd。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。 使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。当然我们的这个版本的主要内容是介绍批处理在入侵中一些实际运用,例如我们后面要提到的用批处理文件来给系统打补丁、批量植入后门程序等。 下面就开始我们批处理学习之旅吧。 (本文因篇幅较长,所以分成两部份。前半部份讲命令,后半部分讲实例分析。) 一、简单批处理内部命令简介 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。 语法 echo [{on off}] [message] Sample:@echo off / echo hello world 在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。 2.@ 命令 表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。 Sample:@echo off @echo Now initializing the program,please wait a minite... @format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。)

新手学习的DOS批处理高级教程全集

DOS批处理高级教程精选合编20080331(windows Xp) 前言 本教程主要引用伤脑筋版主(https://www.wendangku.net/doc/5b7816275.html,)的系列文章,同时参考引用[英雄]教程等其他批处理教程,本文将这些文章合并在一起,并适当修改,修改整理也是学习过程,力求深刻而又简单易懂,主要目的是方便自己以后查阅。 本教程很长啊,需要一定的耐心才能看完,能够看完的话,差不多就是批处理高手了,即使不是高手也是熟手了。如果连续不停的看完本教程而且理解得差不多,估计人也累趴下了。本教程适合对dos有一定基础的人慢慢学习或查阅。 查阅方法:复制目录中的条目,搜索即可。 目录 第一章批处理基础 第一节常用批处理内部命令简介 1、REM 和 :: 2、ECHO 和 @ 3、PAUSE 4、ERRORLEVEL 5、TITLE 6、COLOR 7、mode 配置系统设备 8、GOTO 和 : 9、FIND 10、START 11、assoc 和 ftype 12、pushd 和 popd 13、CALL 14、shift 15、IF 16、setlocal 与变量延迟 17、ATTRIB 显示或更改文件属性 第二节常用特殊符号 1、@ 命令行回显屏蔽符 2、% 批处理变量引导符 3、> 重定向符 4、>> 重定向符 5、<、>&、<& 重定向符 6、| 命令管道符 7、^ 转义字符 8、& 组合命令 9、&& 组合命令 10、|| 组合命令

11、"" 字符串界定符 12、, 逗号 13、; 分号 14、() 括号 15、! 感叹号 第二章 FOR命令详解 一、基本格式 二、参数 /d 三、参数 /R 四、参数 /L 五、参数 /F 第三章 FOR命令中的变量 一、~I - 删除任何引号("),扩展 %I 二、%~fI - 将 %I 扩展到一个完全合格的路径名 三、%~dI - 仅将 %I 扩展到一个驱动器号 四、%~pI - 仅将 %I 扩展到一个路径 五、%~nI - 仅将 %I 扩展到一个文件名 六、%~xI - 仅将 %I 扩展到一个文件扩展名 七、%~sI - 扩展的路径只含有短名 八、%~aI - 将 %I 扩展到文件的文件属性 九、%~tI - 将 %I 扩展到文件的日期/时间 十、%~zI - 将 %I 扩展到文件的大小 十一、 %~$PATH:I 第四章批处理中的变量 一、系统变量 二、自定义变量 第五章 set命令详解 一、用set命令设置自定义变量 二、用set命令进行简单计算 三、用set命令进行字符串处理 1、字符串替换 2、字符串截取 第六章 if命令讲解 第一种用法:IF [NOT] ERRORLEVEL number command 第二种用法:IF [NOT] string1==string2 command 第三种用法:IF [NOT] EXIST filename command 第四种用法:IF增强的用法 第七章 DOS编程高级技巧 一、界面设计

DOS批处理高级教程:第四章 批处理中的变量

批处理中的变量,我把他分为两类,分别为"系统变量"和"自定义变量" 我们现在来详解这两个变量! 一、系统变量 他们的值由系统将其根据事先定义的条件自动赋值,也就是这些变量系统已经给他们定义了值, 不需要我们来给他赋值,我们只需要调用而以! 我把他们全部列出来! %ALLUSERSPROFILE% 本地返回“所有用户”配置文件的位置。 %APPDATA% 本地返回默认情况下应用程序存储数据的位置。 %CD% 本地返回当前目录字符串。 %CMDCMDLINE% 本地返回用来启动当前的Cmd.exe 的准确命令行。 %CMDEXTVERSION% 系统返回当前的“命令处理程序扩展”的版本号。 %COMPUTERNAME% 系统返回计算机的名称。 %COMSPEC% 系统返回命令行解释器可执行程序的准确路径。 %DATE% 系统返回当前日期。使用与date /t 命令相同的格式。由Cmd.exe 生成。有关date 命令的详细信息,请参阅Date。 %ERRORLEVEL% 系统返回上一条命令的错误代码。通常用非零值表示错误。 %HOMEDRIVE% 系统返回连接到用户主目录的本地工作站驱动器号。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。 %HOMEPATH% 系统返回用户主目录的完整路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。 %HOMESHARE% 系统返回用户的共享主目录的网络路径。基于主目录值而设置。

用户主目录是在“本地用户和组”中指定的。 %LOGONSERVER% 本地返回验证当前登录会话的域控制器的名称。 %NUMBER_OF_PROCESSORS% 系统指定安装在计算机上的处理器的数目。 %OS% 系统返回操作系统名称。Windows 2000 显示其操作系统为Windows_NT。%PATH% 系统指定可执行文件的搜索路径。 %PATHEXT% 系统返回操作系统认为可执行的文件扩展名的列表。 %PROCESSOR_ARCHITECTURE% 系统返回处理器的芯片体系结构。值:x86 或IA64 基于Itanium %PROCESSOR_IDENTFIER% 系统返回处理器说明。 %PROCESSOR_LEVEL% 系统返回计算机上安装的处理器的型号。 %PROCESSOR_REVISION% 系统返回处理器的版本号。 %PROMPT% 本地返回当前解释程序的命令提示符设置。由Cmd.exe 生成。 %RANDOM% 系统返回0 到32767 之间的任意十进制数字。由Cmd.exe 生成。%SYSTEMDRIVE% 系统返回包含Windows server operating system 根目录(即系统根目录)的驱动器。 %SYSTEMROOT% 系统返回Windows server operating system 根目录的位置。%TEMP% 和%TMP% 系统和用户返回对当前登录用户可用的应用程序所使用的默认临时目录。有些应用程序需要TEMP,而其他应用程序则需要TMP。 %TIME% 系统返回当前时间。使用与time /t 命令相同的格式。由Cmd.exe 生成。有关time 命令的详细信息,请参阅Time。 %USERDOMAIN% 本地返回包含用户帐户的域的名称。 %USERNAME% 本地返回当前登录的用户的名称。 %USERPROFILE% 本地返回当前用户的配置文件的位置。

dos批处理命令小程序文件

一.简单批处理部命令简介 先来看一个垃圾清理批处理文件吧 echo off echo 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.tmp del /f /s /q %systemdrive%\*._mp del /f /s /q %systemdrive%\*.log del /f /s /q %systemdrive%\*.gid del /f /s /q %systemdrive%\*.chk del /f /s /q %systemdrive%\*.old del /f /s /q %systemdrive%\recycled\*.* del /f /s /q %windir%\*.bak del /f /s /q %windir%\prefetch\*.* rd /s /q %windir%\temp & md %windir%\temp del /f /q %userprofile%\recent\*.*

del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*" del /f /s /q "%userprofile%\Local Settings\Temp\*.*" del /f /s /q "%userprofile%\recent\*.*" echo 清除系统垃圾完成~ echo. & pause 将上面的容保存为*.bat就可以运行了,清理系统垃圾 下面是详细讲解 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当 前回显设置。 语法

相关文档
相关文档 最新文档