echo

打开回显或关闭回显功能,或显示消息。如果没有任何参数,echo命令将显示当前的回显设置。
命令格式1:echo [{on|off}]
命令格式2:echo [message]
 
例、在命令提示符中关闭回显,并显示"hello world"
创建一个hello.bat脚本文件,输入以下内容
@echo off
echo "hello world"
pause > nul
在实际应用中我们也会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定的文件中。如:
例2、创建文本文件"echo.txt",内容为"hello world"
echo hello world > echo.txt
 
注:通过echo 输出空行的方法
echo=
echo,
echo;
echo+
echo/
echo[
echo]
echo:
echo.
echo\
 
 

rem

在批处理文件或 CONFIG.SYS 里加上注解或说明。类似于在C语言中的/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。
命令格式:rem [comment]
 
 

pause

暂停命令。运行 Pause 命令时,将显示下面的消息:Press any key to continue. . .(或:请按任意键继续. . .)。可以将其重定向到空(pause > nul),不显示消息。
 
 

call

从一个批处理程序调用另一个批处理程序,并且不终止批处理程序。call命令接受作用调用目标的标签。如果在脚本或批处理文件外使用call,它将不在命令行起作用。另外,call命令还能在相同的进程中互相传值。
命令用法:call [[Drive:][Path] FileName ] [:label [arguments]]
 
例、创建一个call1.bat脚本文件,输入

@echo off
call :label
echo 1
echo 2

:label
echo 3
echo 4

创建一个call2.bat脚本文件,输入
@echo off
call call1.bat
pause
双击执行call2.bat,执行结果如下
 

goto

跳转命令。程序指针跳转到指定的标签,从标签后的第一条命令开始继续执行批处理程序。
命令格式:goto label
参数说明:
  • label 指定批处理程序中用作标签的文字字符串
 
例、创建一个goto.bat脚本文件,输入

@echo off
goto :label
echo 1
echo 2

:label
echo 3
echo 4
pause

双击执行goto.bat,执行结果如下
 
goto :eof的作用
eof是“end of file”的缩写
在批处理作用主要有二:
1.在无call的情况下,会直接退出批处理,此时等同于exit
2.在call的情况下,会中止call,继续执行其他命令
 
 

start

调用外部程序,所有的DOS命令和命令行程序都可以由start命令来调用。
具体用法在上一章有详细讲解,如 start cacls.exe 即可打开计算器。
 
 

set

显示、设置或删除变量。
命令格式:set [variable=[string]]
参数说明:
variable 指环境变量名
string 指定要指派给变量的一系列字符串
 
例1、显示批处理当前已定义的所有变量及其值
set
例2、显示所有以"s"开头的变量及其值
set s
例3、向变量"aa"赋值"abcd"
set aa=abcd
例4、以echo的方式输出环境变量"aa"
echo %aa%
例5、删除变量aa
set aa=
 
set命令的两个命令行开关
set /A expression
set /P variable=[promptString]
 
/A 命令行开关指定等号右边的字符串为被评估的数字表达式。
该表达式评估器很简单并以递减的优先权顺序支持下列操作:
( )   分组
! ~ - 一元运算符
* / % 算数运算符
<< >> 逻辑移位
& 按位“与”
^ 按位“异”
| 按位“或”
= *= /= %= += -= 赋值
&= ^= |= <<= >>= , 表达式分隔符

/P 命令行开关允许将变量数值设成用户输入的一行输入。读取输入

行之前,显示指定的 promptString。promptString 可以是空的。
 
注:需要说明的是,批处理中的变量是不区分类型的,不需要像C语言中的变量那样还要区分int、float、char等。比如执行set aa=345后,变量aa的值既可以被视为数字345,也可以被视为字符串345。
 
windows系统中的常见环境变量
%CD%:当前路径。这和在命令行中输入cd得到的结果相同。
%DATE%:当前日期。这和在命令行中输入date得到的日期及格式结果相同。
%TIME%:当前时间。这和在命令行中输入time得到的时间及格式结果相同。
%ERRORLEVEL%:错误等级,输出的是最后一次出错的错误代码。
%RANDOM%:随机返回一个0~32767之间的整数。
%APPDATA%:当前登录用户的Application Data(应用程序数据)的完整路径。
%LOCALAPPDATA%:应用程序的临时文件路径,包括桌面主题,Windows异常报告,缓存等等。
%ProgramFiles%:program files路径,存放着Windows中安装的应用程序。
%CommonProgramFiles%:公共文件路径,默认为"C:\Program Files\CommonFiles"。
%SystemDrive%:Windows系列系统独有的环境变量,表示系统盘盘符,指出操作系统的安装磁盘(如果在C盘的话,那么值为”C:”)。
%SystemRoot%:Windows系列系统独有的环境变量,表示操作系统的根目录,盘符和%SystemDrive%相同,路径因系统的版本而异,XP及之后的操作系统为"\Windows"。
%windir%:Windows系统文件的安装目录,即Windows文件夹的全路径,在XP及之后的系统中为"C:\Windows"。
%UserDomain%:计算机所在的工作组或者域的名称。
%LOGONSERVER%:当前登录用户的身份验证服务器主机名。
%UserProfile%:Windows系列系统独有的环境变量,表示当前用户的文档的路径。
%UserName%:当前登录用户的用户名。
%PATH%:由一系列的分号分隔的路径组成,用于脚本解析或者命令行在执行命令时,查找匹配的可执行文件或者脚本。路径为绝对路径,对于路径中包含的子路径不会进行递归查找。
 
关于PATH环境变量的一点说明:
Windows中很多程序在安装或者配置过程中(例如JAVA JDK的安装,python的安装等等),都需要配置PATH环境变量,在配置的过程中要注意的是,PATH环境变量的路径中不能包含空格或者非英文字符和标点,不然该路径及该路径后面的所有路径都会失效。例如有一个特别常见的问题,很多朋友在安装完python开发环境,配置完成环境变量后,在cmd中执行python时会提示“"python"不是内部或外部命令,也不是可运行的程序或批处理文件”,这时首先检查下PATH环境变量中添加的路径是否有空格或者非英文字符和标点,如果没问题,可以把在PATH变量值最后添加的路径放到PATH变量值的最前面,这时如果好用了,那么只有一个可能,PATH变量值中存在无效的路径(包含空格或非英文字符和标点),如果还不好用,再检查一下是不是路径写错了吧。
 

choice

描述:
该工具允许用户从选择列表选择一个项目并返回所选项目的索引。
 
参数列表:
/C choices 指定要创建的选项列表。默认列表是 "YN"。
/N 在提示符中隐藏选项列表。提示前面的消息得到显示,选项依旧处于启用状态。
/CS 允许选择分大小写的选项。在默认情况下,这个工具是不分大小写的。
/T timeout 做出默认选择之前,暂停的秒数。可接受的值是从 0到 9999。如果指定了 0,就不会有暂停,默认选项会得到选择。
/D choice 在 nnnn 秒之后指定默认选项。字符必须在用 /C 选项指定的一组选择中; 同时,必须用 /T 指定 nnnn。
/M text 指定提示之前要显示的消息。如果没有指定,工具只显示提示。
注意:
ERRORLEVEL 环境变量被设置为从选择集选择的键索引。列出的第一个选择返回 1,第二个选择返回 2,等等。如果用户按的键不是有效的选择,该工具会发出警告响声。如果该工具检测到错误状态,它会返回 255 的ERRORLEVEL 值。如果用户按 Ctrl+Break 或 Ctrl+C 键,该工具会返回 0 的 ERRORLEVEL 值。在一个批程序中使用 ERRORLEVEL 参数时,将参数降序排列。
 
例、创建一个choice.bat脚本文件,输入
@echo off choice /c YNC /m "确定请按Y,否请按N,关闭请按C" if %errorlevel%==1 goto :Y if %errorlevel%==2 goto :N if %errorlevel%==3 goto :end :Y echo 你选择了确定 goto:end :N echo 你选择了否 goto :end :end echo goodbye pause>nul
双击执行choice.bat,执行结果如下
输入Y

CMD批处理(1)——批处理常用命令总结的更多相关文章

  1. cmd部分提权常用命令

    ipconfig 显示本地IP地址 net start telnet 开telnet服务 net use z:127.0.0.1c$ 映射对方的C盘 net user 查看所有用户列表 net use ...

  2. Windows批处理(cmd/bat)常用命令小结

    转载自:“趣IT”微信公共号 前言 批处理文件(batch file)包含一系列 DOS命令,通常用于自动执行重复性任务.用户只需双击批处理文件便可执行任务,而无需重复输入相同指令.编写批处理文件非常 ...

  3. [转帖]Windows批处理(cmd/bat)常用命令小结

    Windows批处理(cmd/bat)常用命令小结 非常值得学习的文档 先放这里 有时间做实验, 转载自:“趣IT”微信公共号 前言 批处理文件(batch file)包含一系列 DOS命令,通常用于 ...

  4. Windows 批处理(cmd/bat)常用命令教程

    Windows批处理(cmd/bat)常用命令教程 简单详细,建议收藏 常见问题: 1.如果你自己编写的.bat文件,双击打开,出现闪退 2.批处理.bat 文件中输出中文乱码 解决方法在文章末尾! ...

  5. Windows批处理(cmd/bat)常用命令

    Windows批处理(cmd/bat)常用命令 一.总结 一句话总结: 1.批量处理图片的方式? PS批处理是基于强大的图片编辑软件Photoshop的,用来批量处理图片的脚本: 2.大量的重复的操作 ...

  6. Windows批处理(cmd/bat)常用命令学习

    前言 批处理文件(batch file)包含一系列 DOS命令,通常用于自动执行重复性任务.用户只需双击批处理文件便可执行任务,而无需重复输入相同指令.编写批处理文件非常简单,但难点在于确保一切按顺序 ...

  7. [No0000A5]批处理常用命令大全

    1.Echo 命令打开回显或关闭请求回显功能,或显示消息.如果没有任何参数,echo 命令将显示当前回显设置.语法echo [{on|off}] [message]Sample: echo off e ...

  8. [No0000A5]批处理常用命令大全&&21个DOS常用命令

    1.Echo 命令打开回显或关闭请求回显功能,或显示消息.如果没有任何参数,echo 命令将显示当前回显设置.语法echo [{on|off}] [message]Sample: echo off e ...

  9. 01windows常用命令及批处理

    1. 概述 复制内容:右键弹出快捷菜单,选择"标记(K)",然后选中所需要的内容,然后右键即可 粘贴内容:右键弹出快捷菜单,选择"粘贴(P)" 命令参数的路径: ...

随机推荐

  1. mysql 连表不要用varchar和int这两种不相同的类型做比较

    他会默认你123abc等于123 说多了都是泪啊

  2. c#操作斑马打印机打印中文

    需要引用fnthex32.dll插件,这个网上就能下到,注意分为两个版本,一个版本是8个参数,一个版本是9个参数,我这里用的是9个参数的. 首先用zebradesigner设计一个打印模板 差不多就长 ...

  3. 拿到列表的长度len(列表名)

    拿到列表的长度len(列表名),即元素个数 列表要放在括号里面

  4. 磁盘IO过高时的处理办法 针对系统中磁盘IO负载过高的指导性操作

    磁盘IO过高时的处理办法 针对系统中磁盘IO负载过高的指导性操作 主要命令:echo deadline > /sys/block/sda/queue/scheduler 注:以下的内容仅是提供参 ...

  5. ssh无法启动 (code=exited, status=255)

    ssh无法启动 (code=exited, status=255) 2019年1月30日ssh 服务器运行了一些脚本后,突然发现无法ssh了. root@X61T:/home/liang# servi ...

  6. make: g77: Command not found 修改Makefile.in中的编译文件中的g77为gfortran

    make: g77: Command not found 编译cblas时报错,这时,修改Makefile.in中的编译文件中的g77为gfortran

  7. ansible-一键完成LNMP架构_期中架构

    ansible-一键完成LNMP架构 ansible剧本托管地址 https://github.com/Gshelldong/ansible.git 网站架构图 ansible一键完成lnmp架构 a ...

  8. shell 读取某个目录下的所有文件

    #!/bin/shFILE_PATH="xxx" xxx:路径cd $FILE_PATHfor FILE in `ls` do echo $FILE done

  9. Redis 哨兵模式配置

    搭建步骤 第一步: 在 redis.conf 配置文件目录下拷贝三份 sentinel.conf 文件 [root@node-01 redis-5.0.9]# cp sentinel.conf sen ...

  10. Java - Java 8 新特性

    一.Java8新特性 Java8概述:Java8,也就是jdk1.8版本,是意义深远的一个新版本.是Java5之后一个大的版本升级,让Java语言和库仿佛获得了新生. 二.Lambda表达式 Lamb ...