转百度知道

转百度知道

Windows cmd

一.简单批处理内部命令简介
1.Echo 命令
开拓回显或关闭请求回显功能,或出示新闻。要是未有别的参数,echo
命令将显伏贴前回显设置。
语法
echo [{ on|off }] [message]
Sample:@echo off / echo hello world
在实质上接纳中大家会把那条命令和重定向符号(也号称管道符号,一般用>
>>
^)结合来贯彻输入1些指令到特定格式的文书中.这将在事后的例证中体现出来。

对于跨平台的顺序,平时会提供壹些得力的命令行工具,由此shell脚本、bat脚本文件就必需了。网络上shell的书、作品都游人如织的,所以领会起来会绝对简单的多,而windows下的bat网上则少有涉及。那里不打算写windows
bat 编程大全,而是不难对bat做三个大致的入门级的上学。

2.@ 命令
表示不展现@后面包车型地铁命令,在凌犯进度中(例如利用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的授命啦。
Sample:@echo off
@echo Now initializing the program,please wait a minite…
@format X: /q/u/autoset (format
那一个命令是不可能利用/y这一个参数的,可喜的是微软留了个autoset那个参数给大家,效果和/y是1模一样的。)

甭管在写shell,依然bat,它们的筹划都坚守那样一条规则:1切都是命令。Windows下命令是大小写不敏感的。

3.Goto 命令
点名跳转到标签,找到标签后,程序将处理从下1行开始的命令。
语法:goto label (label是参数,钦命所要转向的批处理程序中的行。)
Sample:
if { %1 }=={ } goto noparms
if { %2 }=={ } goto
noparms(如若那里的if、%一、%二你不晓得的话,先跳过去,前边会有详实的解释。)
@Rem check parameters if null show usage
:noparms
echo Usage: monitor.bat ServerIP PortNumber
goto end
标签的名字能够任由起,不过最为是有含义的假名啦,字母前加个:用来表示这一个字母是标签,goto命令正是依照这么些:来探寻下一步跳到到那里。最佳有部分注明那样您外人看起来才会了然你的用意啊。

 

4.Rem 命令
诠释命令,在C语言中极度与/*——–*/,它并不会被执行,只是起多个注解的意义,便于外人阅读和你协调之后修改。
Rem Message
Sample:@Rem Here is the description.

主题命令(rem, echo, @,/?)

rem:注释 (comment, remarks)。参数能够是其他内容。

echo :它有三个功用:打字与印刷音信、调节和测试开关。假如参数是on
也许off,代表打开、关闭调节和测试,即便后边是任何内容,则参数代表要出口的音讯。为啥就是debug开关呢?若是设置了echo
on,随后履行的其余命令及其实施结果都会输出到专业输出流。

@用于关闭有个别命令的调节和测试音讯,意思是说采纳@标注的下令不会打出命令本身、执行结果。

/? 查看命令协理

例如:

REM open the cmd echo
@echo on
echo hello, windows cmd 
@echo hello, windows cmd 

REM close the cmd echo
@echo off
echo hello, windows cmd 
@echo hello, windows cmd

 

实施结果: 

D:\Note\windows cmd>REM open the cmd echo

D:\Note\windows cmd>echo hello, windows cmd
hello, windows cmd
hello, windows cmd

D:\Note\windows cmd>REM close the cmd echo
hello, windows cmd
hello, windows cmd

 

对于REM的命令,也是会打到STD里,如若不愿意看到,就足以选拔@标注。 

 

 

5.Pause 命令

控制命令(if-else, for-in-do, goto)

 

运作 Pause 命令时,将体现上边包车型地铁新闻:
Press any key to continue . . .
Sample:
@echo off
:begin
copy a:*.* d://back
echo Please put a new disk into driver A
pause
goto begin
在那个例子中,驱动器 A
中磁盘上的拥有文件均复制到d://back中。彰显的诠释提醒您将另一张磁盘放入驱动器
A 时,pause 命令会使程序挂起,以便你更换磁盘,然后按任意键继续处理。

if-else

 

if [noterrorlevel number command [else expression] 基于上一个命令执行的结果进行判定操作

if [notstring1==string2 command [else expression] 判定两个字符串是否相等

if [notexist FileName command [else expression]  判定指定的文件是否存在

If command extensions are enabled, use the following syntax:

if [/istring1 CompareOp string2 command [else expression] 进行字符串比较 (equ, neq, lss, leq, gtr, geq)

if cmdextversion number command [else expression]

if defined variable command [else expression]

 

 

 

6.Call 命令
从三个批处理程序调用另3个批处理程序,并且不结束父批处理程序。call
命令接受用作调用指标的竹签。要是在本子或批处理公事外使用
Call,它将不会在命令行起成效。
语法
call [[Drive:][Path] FileName [BatchParameters]] [:label
[arguments]]
参数
[Drive: }[Path] FileName
点名要调用的批处理程序的地方和称号。filename 参数必须拥有 .bat 或 .cmd
扩展名。

For-in-do

巡回执行,命令语法:

for {%variable | %%variable} in (set) do command [CommandLineOptions]

一)For, in, do 是中央结构,不可或缺;

二){%variable | %%variable} 须要的,变量大小写敏感。

在指令提醒符中执行for时,for中援引变量时,使用%

在批处理公事中推行for时,for中援引变量时,使用%%

其余,为了防止与bat文件的参数 %0到 %玖相争执,所以变量无法是0-九的数字

叁)( set ) 必要的。用于钦命八个 files, directories, range of values,
textstrings。括号不可能省。

 

四)command 须要的,代表要履行的通令。

5)commandLineOptions, 执行command时所需的参数

 

越多用法,大概参考:

 

 

7.start 命令
调用外部程序,全体的DOS命令和下令行程序都得以由start命令来调用。
凌犯常用参数:
MIN 起首时窗口最小化
SEPARATE 在离别的空中内开端 16 位 Windows 程序
HIGH 在 HIGH 优先级档次伊始应用程序
REALTIME 在 REALTIME 优先级档次初步应用程序
WAIT 运维应用程序并伺机它结束
parameters 这么些为传送到命令/程序的参数
实践的应用程序是 3二-位 GUI 应用程序时,CMD.EXE
不等应用程序终止就重回命令提示。若是在命令脚本内推行,该新作为则不会发出。
8.choice 命令
choice
使用此命令能够让用户输入三个字符,从而运维分化的指令。使用时应有加/c:参数,c:后应写提醒可输入的字符,之间无空格。它的再次回到码为123四……
如: choice /c:dme defrag,mem,end
将显示
defrag,mem,end[D,M,E]?
Sample:
萨姆ple.bat的始末如下:
@echo off
choice /c:dme defrag,mem,end
if errorlevel 三 goto defrag (应先判断数值最高的错误码)
if errorlevel 2 goto mem
if errotlevel 1 goto end

goto

语法:goto label

跳转到钦定的label。假使钦命的label不存在,就继续执行下一条命令。假诺找到label,就从label处继续执行。若是程序以不奇怪顺序执行到三个label处,而不是经过goto跳转到label,label下的语句照旧以常规顺序执行。

 

图片 1 

 

 

想要精通越来越多指令参见:

 

 

 

 

 

 

 

:defrag
c://dos//defrag
goto end
:mem
mem
goto end
:end
echo good bye

此文件运转后,将体现 defrag,mem,end[D,M,E]? 用户可挑选d m e
,然后if语句将作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每一种程序段最后都是goto
end将次第跳到end标号处,然后程序将显得good bye,文件截至。

9.If 命令

if 代表将判断是不是符合规定的标准化,从而决定实施不一的命令。 有三种格式:

一、if “参数” == “字符串” 待执行的吩咐
参数假设等于内定的字符串,则条件建立,运营命令,不然运转下一句。(注意是五个等号)
如if “%1″==”a” format a:
if { %1 }=={ } goto noparms
if { %2 }=={ } goto noparms

2、if exist 文件名 待执行的一声令下
万壹有钦点的文件,则条件建立,运维命令,不然运营下一句。
如if exist config.sys edit config.sys

三、if errorlevel / if not errorlevel 数字 待执行的一声令下
要是重回码等于钦点的数字,则条件建立,运维命令,不然运维下一句。
如if errorlevel 2 goto x2
DOS程序运营时都会重回一个数字给DOS,称为错误码errorlevel或称重返码,常见的回到码为0、1。

10.for 命令
for 命令是叁个相比复杂的吩咐,重要用于参数在内定的范围内循环执行命令。
在批处理公事中央银行使 FO奥迪Q5 命令时,钦点变量请使用 %%variable

for { %variable|%%variable } in (set) do command [
CommandLineOptions]
%variable 钦点二个单纯字母可替换的参数。
(set) 钦点1个或壹组文件。能够运用通配符。
command 钦赐对各样文件实施的吩咐。
command-parameters 为一定命令钦点参数或命令行开关。
在批处理文件中运用 FO君越 命令时,钦赐变量请使用 %%variable
而不用用 %variable。变量名称是分别轻重缓急写的,所以 %i 不一致于 %I

如若命令扩充名被启用,下列额外的 FO帕杰罗 命令格式会受到
支持:

FOR /D %variable IN (set) DO command [command-parameters]

要是集中包括通配符,则钦点与目录名相称,而不与公事
名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-

检查以 [drive:]path 为根的目录树,指向每一个目录中的
FO君越 语句。即使在 /奥德赛 后尚未点名目录,则使用当前
目录。倘使集仅为3个单点(.)字符,则枚举该目录树。

FOR /L %variable IN (start,step,end) DO command [command-para

该集表示以增量方式从初始到停止的3个数字种类。

采纳批处理文件

——常用命令

echo、@、call、pause、rem
是批处理文件最常用的多少个指令,大家就从她们起始学起。 echo
表示显示此命令后的字符
echo off 代表在此语句后拥有运转的一声令下都不显示命令行本人
@ 与echo
off相象,但它是加在其它命令行的最前头,表示运维时不显得命令行本身。
call 调用另一条批处理文件(若是直接调用其他批处理公事
,执行完那条文件后将不可能推行当前文件三番五次命令)
pause 运行此句会暂停,显示Press any key to continue…
等待用户按任意键后继续
rem 代表此命令后的字符为解释行,不履行,只是给本身事后寻觅用的

例:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可完结:将根目录中负有文件写入
a.txt中,运营UCDOS,进入WPS等功用。

批处理公事的始末为: 文件表示:

echo off 不显得命令行

dir c:\*.* >a.txt 将c盘文件列表写入a.txt

call c:\ucdos\ucdos.bat 调用ucdos

echo 你好 显示”你好”

pause 暂停,等待按键继续

rem 使用wps 注释将利用wps

cd ucdos 进入ucdos目录

wps 使用wps

批处理公事中还是可以像C语言一样使用参数,那只需用到贰个参数表示符%。

网站地图xml地图