【转百度知道】批管理

Windows cmd

一.轻易批管理在那之中命令简单介绍
1.Echo 命令
开垦回显或关闭央浼回显功能,或出示新闻。若无别的参数,echo 命令将显示当前回显设置。
语法
echo [www.4688.com,{ on|off }] [message]
Sample:@echo off / echo hello world
在实际上利用中大家会把这条命令和重定向符号(也称之为管道符号,通常用> >> ^)结合来落到实处输入一些限令到一定格式的文书中.那将在未来的事例中显示出来。

windows bat(批管理)——基础语法

对此跨平台的前后相继,平时会提供部分平价的命令行工具,由此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是同一的。)

 

无论是在写shell,照旧bat,它们的计划都遵守那样一条规范:一切都以命令。Windows下命令是大大小小写不灵敏的。

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
标签的名字能够随便起,但是最佳是有含义的假名啦,字母前加个:用来表示这一个字母是标签,goto命令就是依照这么些:来找寻下一步跳到到那边。最佳有一部分验证那样你别人看起来才会明白您的意向啊。

  1. @

 

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 命令

  1. echo

垄断命令(if-else, for-in-do, goto)

美高梅4858官方网站, 

运营 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 命令会使程序挂起,以便你退换磁盘,然后按大肆键继续处理。

2.1  echo [{on|off}] [message]

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 命令
从八个批管理程序调用另一个批管理程序,何况不结束父批处理程序。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]

1)For, in, do 是主导构造,不可缺少;

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

在指令提示符中实践for时,for中援引变量时,使用%

在批处理文件中奉行for时,for中援用变量时,使用%%

除此以外,为了幸免与bat文件的参数 %0到 %9相争执,所以变量不能够是0-9的数字

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

 

4)command 要求的,代表要实行的命令。

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

 

越来越多用法,只怕仿效:

 

 

7.start 命令
调用外界程序,全数的DOS命令和下令行程序都能够由start命令来调用。
入侵常用参数:
MIN 开头时窗口最小化
SEPARATE 在暌违的长空内开首 16 位 Windows 程序
HIGH 在 HIGH 优先级档期的顺序开头应用程序
REALTIME 在 REALTIME 优先级等级次序最初应用程序
WAIT 运营应用程序并等候它结束
parameters 这几个为传送到命令/程序的参数
试行的应用程序是 32-位 GUI 应用程序时,CMD.EXE 不等应用程序终止就回去命令提醒。假设在指令脚本内试行,该新表现则不会时有发生。
8.choice 命令
choice 使用此命令可以让顾客输入三个字符,进而运转不一致的授命。使用时应有加/c:参数,c:后应写提醒可输入的字符,之间无空格。它的再次回到码为1234……
如: choice /c:dme defrag,mem,end
将显示
defrag,mem,end[D,M,E]?
Sample:
Sample.bat的内容如下:
@echo off
choice /c:dme defrag,mem,end
if errorlevel 3 goto defrag (应先推断数值最高的错误码)
if errorlevel 2 goto mem
if errotlevel 1 goto end

2.2 on | off

goto

语法:goto label

跳转到钦点的label。假诺钦赐的label不设有,就继续施行下一条命令。假如找到label,就从label处继续实施。假设程序以健康顺序推行到一个label处,并不是经过goto跳转到label,label下的口舌仍然以日常顺序实践。

 

美高梅4858官方网站 1 

 

 

想要理解越多指令参见:

 

 

 

 

 

 

 

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

它其实是二个开关命令,就是说它唯有二种状态:张开和停业。于是就有了echo on和echo off三个指令了。

此文件运转后,将展现 defrag,mem,end[D,M,E]? 客商可挑选d m e ,然后if语句将作出推断,d表示实践标号为defrag的程序段,m表示施行标号为mem的程序段,e表示实践标号为end的程序段,每种程序段最终都是goto end将前后相继跳到end标号处,然后程序将显示good bye,文件结束。

(1)echo off

9.If 命令

只展现试行结果

if 代表将决断是还是不是相符规定的标准,进而决定施行不一的下令。 有三种格式:

(2)echo on (默认)

1、if "参数" == "字符串" 待实践的授命
参数纵然等于钦点的字符串,则条件创设,运维命令,否则运转下一句。(注意是四个等号)
如if "%1"=="a" format a:
if { %1 }=={ } goto noparms
if { %2 }=={ } goto noparms

体现施行命令(除echo)和施行结果

2、if exist 文件名 待施行的指令
万一有钦赐的文本,则条件创设,运维命令,不然运行下一句。
如if exist config.sys edit config.sys

(3)> 输出重定向

3、if errorlevel / if not errorlevel 数字 待施行的吩咐
要是重返码等于钦赐的数字,则条件创建,运营命令,不然运营下一句。
如if errorlevel 2 goto x2
DOS程序运维时都会再次回到贰个数字给DOS,称为错误码errorlevel或称重临码,常见的归来码为0、1。

创立或清空文件,然后把多少输出到文件

10.for 命令
for 命令是一个比较复杂的下令,首要用以参数在钦赐的范围内循环试行命令。
在批管理公事中应用 FO奥迪Q7 命令时,钦命变量请使用 %%variable

echo hi > a.txt

for { %variable|%%variable } in (set) do command [ CommandLineOptions]
%variable 钦定二个十足字母可替换的参数。
(set) 钦命二个或一组文件。能够使用通配符。
command 钦赐对各样文件实践的下令。
command-parameters 为一定命令钦命参数或命令行按钮。
在批管理公事中应用 FOTucson 命令时,钦赐变量请使用 %%variable
而不用用 %variable。变量名称是分别轻重缓急写的,所以 %i 不相同于 %I

把多少追加到文件

一旦命令扩展名被启用,下列额外的 FO昂科雷 命令格式会遭到
支持:

echo this is a text >>a.txt

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

 

只要聚焦富含通配符,则钦定与目录名相配,而不与公事
名匹配。

echo hi > a.txt

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

type a.txt

检查以 [drive:]path 为根的目录树,指向种种目录中的
FOQX56 语句。假使在 /汉兰达 后不曾点名目录,则选取当前
目录。假如集仅为三个单点(.)字符,则枚举该目录树。

echo this is a text >>a.txt

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

type a.txt

该集表示以增量格局从开首到截止的三个数字系列。

 

采纳批管理文件

  1. 注释

——常用命令

:: 或 rem

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等成效。

  1. ":"和 goto

批管理公事的内容为: 文件表示:

(1)goto

echo off 不出示命令行

跳转到标签

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

(2):

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

概念三个标签

echo 你好 显示"你好"

 

pause 暂停,等待按钮继续

            Sample:

rem 使用wps 注释将利用wps

[python] 

cd ucdos 进入ucdos目录

if {%1}=={} goto noparms