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 :\test  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:\test.txt    #把ipconfig信息输出存到C盘test.txt文本中,覆盖文本原有的内容后再写入

ipconfig  >>  c:\test.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: \server\d      #这样输入z:就可以访问\server\d了
subst z: /d              #取消该映射
subst                    #显示目前所有的映时

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

DOS批处理基础的更多相关文章

  1. Java程序设计的DOS命令基础

    Java程序设计的DOS命令基础 用户使用操作系统和软件有两种方式:命令行界面(Command Line Interface,CLI)和图形界面(Graphical User Interface,GU ...

  2. 命令精解之DOS批处理

    前言 最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古语云:“授人以鱼,不如授人以渔.”因为网上 ...

  3. DOS批处理高级教程

    转载-->http://blog.csdn.net/lanbing510/article/details/7461073 前言 本教程主要引用伤脑筋版主的系列文章,同时参考引用[英雄]教程等其他 ...

  4. 利用DOS批处理实现定时关机操作

    10月1放假回来,寝室晚上10:30就停电了,最无法让人理解的是第二天早上8:00才来电.原来晚上电脑都是不关机的,开着WiFi一直到天亮,可是现在不行了,电脑如果一直开着第二天早上起来电脑肯定没电, ...

  5. DOS批处理中%cd%和%~dp0的区别

    DOS批处理中%cd%和%~dp0的区别   在DOS的批处理中,有时候需要知道当前的路径. 在DOS中,有两个环境变量可以跟当前路径有关,一个是%cd%, 一个是%~dp0.       这两个变量 ...

  6. DOS批处理不支持将UNC 路径作为当前目录的巧妙解决方案

    DOS批处理不支持将UNC 路径作为当前目录的巧妙解决方案在有些时候,需要在批处理中操作UNC目录,但批处理并不能直接对UNC目录进行操作,怎么办? 废话少说,直接上代码,打开网上邻居→整个网络→Mi ...

  7. 用DOS批处理实现FTP自动上传、下载、清理文件

    用DOS批处理实现FTP自动上传.下载.清理文件 最近好像特别的忙,好久没来写点东西了,今天写了一个利用批处理程序完成FTP自动上传.下载.清理文件的程序.赶紧 记录下来,以备日后之用.功能介绍:自动 ...

  8. DOS批处理命令判断操作系统版本、执行各版本对应语句

    DOS批处理命令判断操作系统版本.执行各版本对应语句   昨天在家里试用  netsh interface ip set address 这些命令更改上网IP.DNS.网关等,今天将那些代码拿来办公室 ...

  9. DOS批处理延时技术

    DOS批处理延时技术 举个例子,我们要延时5秒打开gdh.txt这个文件,可以用以下几个方法 方法一:ping  缺点:时间精度为1秒,不够精确   www.2cto.com   @echo off  ...

随机推荐

  1. Markdown语法学习(二)

    概述 宗旨 Markdown 的目标是实现「易读易写」. 可读性,无论如何,都是最重要的.一份使用 Markdown 格式撰写的文件应该可以直接以纯文本发布,并且看起来不会像是由许多标签或是格式指令所 ...

  2. HTML <meta> 标签 和 http-equiv

    前言 经常在写HTML,但是对于meta 的设置却一直疏于关注. <meta> 是什么 <meta> 是一个HTML的标签(辅助性标签). 它的位置位于文档的头部  <h ...

  3. 【Java】异常类处理层次

    异常处理简介 异常在java的开发中可能没有那么被重视.一般遇到异常,直接上抛,或者随便catch一下处理之后对于程序整体运行也没有什么大的影响.不过在企业级设计开发中,异常的设计与处理的好坏,往往就 ...

  4. STM32内部flash存储小数——别样的C语言技巧

    今天在进行STM32内部falsh存储的时候,发现固件库历程的函数原型是这样的: 第一个是地址,在我的STM32中是2K一页的,第二个是要写入的数据. 问题就来了,存储一个小数该怎么办呢?固件库给的是 ...

  5. Android开发(三十)——ScrollView中ListView的高度自动适应

    int totalHeight = 0; for (int i = 0; i < mStrings.length; i++) { //pullList ListView //mAdapter A ...

  6. [转]Oracle存储过程给变量赋值的方法

    原文地址:http://blog.csdn.net/drbing/article/details/51821262 截止到目前我发现有三种方法可以在存储过程中给变量进行赋值:1.直接法     :=  ...

  7. 阿里云RDS上用mysqldump导入导出

    文章转载自: http://blog.csdn.net/jk0803_wantao/article/details/9179217 1. 开通云服务器服务.2. 开通RDS服务,如果开通成功,会返回给 ...

  8. Java API学习(一) ArrayList源码学习

    ArrayList在平常用的还挺多的,用起来十分舒服,顺手.这里来学习一下它的源码. 类定义 下面是类的定义: public class ArrayList<E> extends Abst ...

  9. git .gitignore 文件不起作用

    .gitignore 不起作用的原因是因为 git 有以前文件缓存,只要清理一次缓存即可 git rm -r --cached . // 然后再进行 git git add . git commit

  10. Hbase 学习(五) 调优

    1.垃圾回收器调优 当我们往hbase写入数据,它首先写入memstore当中,当menstore的值大于hbase.hregion.memstore.flush.size参数中设置的值后,就会写入硬 ...