• DOS批处理基础


     

    1、  echo@

    回显命令

    @                   #表示不显示@后面的命令

    echo off               #从下一行开始关闭回显

    @echo off             #从本行开始关闭回显。一般批处理第一行都是这个

    echo on               #从下一行开始打开回显

    echo                  #显示当前是 echo off 状态还是 echo on 状态

    echo.                 #输出一个”回车换行”,空白行,命令一样功能的还有echo, echo; echo+ echo[ echo] echo/ echo

    2、dir

    显示目录命令

    dir               #显示当前目录中的文件和子目录

    dir  /a             #显示当前目录中的文件和子目录,包括隐藏文件和系统文件

    dir  c:  /b/p         #/b只显示文件名,/p分页显示

    dir  *.exe  /s         #显示当前目录和子目录里所有的.exe文件

    3、  type

    显示文本内容

    type  c:abc.txt     #显示C盘abc.txt文本内容

    4、cd

    切换目录命令

    cd                    #进入根目录

    cd   ..                 #返回上一级目录

    cd  /d  d:               #C盘切换到D盘

    5、md  和 mkdir

    创建目录命令

    md  c:abc              #C盘创建abc文件夹

    mkdir  c:abc              #C盘创建abc文件夹

    6、rd

    删除目录命令

    rd  c:abc

    7、del

    删除文件命令

    del  c:abc.txt      #删除指定文件,不能是隐藏、系统、只读文件

    8、ren

    重命名命令

    ren  c:abc  123          #把C盘abc文件夹重命名123

    ren  c:abc.txt  123.txt    #把C盘abc.txt文本重命名123.txt

    9、copy  和  xcopy

    复制文件命令

    copy  c :abc.txt  d:   #把C盘abc.txt文本复制到D盘根目录

    xcopy  /e  c : est  d:   #把C盘test目录所有文件都复制到D盘根目录

    标注:copy 和 xcopy 区别

    copy 可以复制一个或多个文件,但不能复制目录下的子目录及子目录的文件。

    xcopy 复制指定的目录和目录下的所有文件连同目录结构,但不能拷贝隐藏文件和系统文件

    10、pause

    暂停弹出的cmd窗口命令

    11、rem::

    注释命令

    12、find

    查找命令

    ipconfig  |  find  "192.168"   #查找ipconfig信息里面以192.168开头的信息

    13、&

    顺序执行多条命令,不管命令是否执行成功都会往下执行

    14、&&

    顺序执行多条命令,当第一条命令执行错误后将不会执行后面的命令,当第一条命令执行成功后会继续往下执行命令

    15、||

    顺序执行多条命令,当执行第一条命令正确后将不执行后面的命令,当执行第一条命令错误后将继续执行下面命令

    16、|

    管道命令

    ipconfig  |  find  "192.168"     #执行ipconfig输出结果执行后面的find命令查找192.168开头的信息

    17、> >>

    输出重写向命令

    ipconfig  >  c: est.txt    #把ipconfig信息输出存到C盘test.txt文本中,覆盖文本原有的内容后再写入

    ipconfig  >>  c: est.txt   #把ipconfig信息输出存到C盘test.txt文本中,追加内容到文本末尾,不会覆盖文本原来的内容

    18、<

    从文件中获得输入信息,而不是从屏幕上

    一般用于 date time label 等需要等待输入的命令

    @echo off

    echo 2005-05-01>temp.txt

    date <temp.txt

    del temp.txt

    这样就可以不等待输入直接修改当前日期

    19、set

    设置变量命令

    引用变量可以在变量名前后加%,即%变量名%

    set                     #显示目前所有可用的变量,包括系统变量和自定义的变量
    echo %SystemDrive%      #显示系统盘盘符。系统变量可以直接引用
    set p                   #显示所有以p开头的变量,要是一个也没有就设errorlevel=1
    set p=aa1bb1aa2bb2      #设置变量p,并赋值为 = 后面的字符串,即aa1bb1aa2bb2
    echo %p%                #显示变量p代表的字符串,即aa1bb1aa2bb2
    echo %p:~6%             #显示变量p中第6个字符以后的所有字符,即aa2bb2
    echo %p:~6,3%           #显示第6个字符以后的3个字符,即aa2
    echo %p:~0,3%           #显示前3个字符,即aa1
    echo %p:~-2%            #显示最后面的2个字符,即b2
    echo %p:~0,-2%          #显示除了最后2个字符以外的其它字符,即aa1bb1aa2b
    echo %p:aa=c%           #用c替换变量p中所有的aa,即显示c1bb1c2bb2
    echo %p:aa=%            #将变量p中的所有aa字符串置换为空,即显示1bb12bb2
    echo %p:*bb=c%          #第一个bb及其之前的所有字符被替换为c,即显示c1aa2bb2
    set p=%p:*bb=c%         #设置变量p,赋值为 %p:*bb=c% ,即c1aa2bb2
    set /a p=39             #设置p为数值型变量,值为39
    set /a p=39/10          #支持运算符,有小数时用去尾法,39/10=3.9,去尾得3,p=3
    set /a p=p/10           #用 /a 参数时,在 = 后面的变量可以不加%直接引用
    set /a p=”1&0″          #”与”运算,要加引号。其它支持的运算符参见set/?
    set p=                  #取消p变量
    set /p p=请输入
    屏幕上显示”请输入”,并会将输入的字符串赋值给变量p

    20、if

    判断语句

    1、判断驱动器、文件或文件夹是否存在,用 if exist 语句

    2、判断某两个字符串是否相等,用 if "字符串1"=="字符串2" 语句

    3、判断某两个数值是否相等,用 if 数值1 equ 数值2 语句

    4、判断某个变量是否已经被赋值,用 if defined str 语句

    5、equ和==功能一样意思是等于

    语法:

    if语句的完整格式是这样的:if 条件表达式 (语句1) else (语句2),它的含义是:如果条件表达式成立,那么,就执行语句1,否则,将执行语句2。

    例子:输入一个数字,如果是1就是对的,如果是2就是错的,如果是其它就显示没有答案

    @echo off

    set /p var=请输入

    if  %var%  equ  1 (

    echo  对的

    pause

    )

    if  %var%  equ  2 (

    echo  错的

    pause

    )else  echo 没有答案

    Pause

    判断两个数值之间的大小关系,除了等于用equ之外,还有其他的关系符号,所有适用于if语句的关系符号见下表:

    中文含义                           关系符

    等于                                   equ

    大于                                    gtr

    大于或等于                      geq l

    小于                                    lss

    小于或等于                      leq

    不等于                               neq

    例子:输入一个数字如果是大于10的就显示

    @echo off

    set /p var=请输入

    if %var% geq 10 (

    echo 你输入的数字大于等于10

    pause

    )else (

    echo 你输入的数字小于10

    pause)

    标注:批处理中的大于号,小于号,等于号等等都不能用:“>”  “<”  “=” 这些符号,而要用像"gtr"这类

    的。

    21、goto :

    跳转命令

    : label      #行首为 : 表示是标签行,标签行不执行操作

    goto  label   #跳转到指定的标签行

    goto配合if语句作判断使用

    @echo off

    set /p var=请输入

    if %var% equ 1 goto A

    if %var% equ 2 goto B

    if %var% equ 3 goto C

    goto end

    :A

    echo 你输入的数字是 1

    pause

    :B

    echo 你输入的数字是 2

    pause

    :C

    echo 你输入的数字是 3

    pause

    22、for

    循环语句

    此命令过于复杂,只讲讲解大概

    1、for、in和do是for语句的关键字,它们三个缺一不可;

    2、%%I是for语句中对形式变量的引用,就算它在do后的语句中没有参与语句的执行,也是必须出现的;

    3、in之后,do之前的括号不能省略;

    4、command1表示字符串或变量,command2表示字符串、变量或命令语句; command2

    标注:

    在cmd窗口中使用for语句格式:for %i  in (command1)  do  command2

    在批处理文件中使用for语句格式:for %%i  in (command1)  do  command2

    例子:检查当前电脑有哪些分区

    @echo off

    set str=c d e f g h i j k l m n o p q r s t u v w x y z

    echo 当前硬盘的分区有:

    for %%i in (%str%) do if exist %%i: echo %%i:

    pause

    标注:

    1、for语句的形式变量i,可以换成26个字母中的任意一个,这些字母会区分大小写,也就是说,%%I和%%i会被认为不是同一个变量;形式变量I还可以换成其他的字符,但是,为了不与批处理中的%0~%9这10个形式变量发生冲突,请不要随意把%%I替换为%%0 ~%%9中的任意一个;

    2、in和do之间的command1表示的字符串或变量可以是一个,也可以是多个,每一个字符串或变量,我们称之为一个元素,每个元素之间,用空格键、跳格键、逗号、分号或等号分隔;

    3、for语句依次提取command1中的每一个元素,把它的值赋予形式变量i,带到do后的command2中参与命令的执行;并且每次只提取一个元素,然后执行一次do后的命令语句,而无论这个元素是否被带到command2中参与了command2的运行;当执行完一次do后的语句之后,再提取command1中的下一个元素,再执行一次command2,如此循环,直到command1中的所有元素都已经被提取完毕,该for语句才宣告执行结束;

    23、subst

    映射磁盘
    subst z: serverd      #这样输入z:就可以访问serverd了
    subst z: /d              #取消该映射
    subst                    #显示目前所有的映时

    感谢此博客提供参考http://blog.csdn.net/muximuxi_kgsecond/article/details/8127345 

  • 相关阅读:
    类和对象
    数组
    随笔3
    设计把所有的奇数移动到所有偶数前面的算法
    选择排序
    队列的链式存储结构
    循环队列
    一起玩算法(把所有相同的数字后移)
    判断序列B是否是序列A的连续子序列
    power bi创建切片器导航
  • 原文地址:https://www.cnblogs.com/zoulongbin/p/6574075.html
Copyright © 2020-2023  润新知