首先说一下cmd文件和bat文件的区别,从文件描述中的区别是,cmd文件叫做:Windows命令脚本,bat文件叫:批处理文件,两者都可以使用任意一款文本编辑器进行创建、编辑和修改,只是在cmd中支持的命令要多于bat。

批处理文件是一种没有什么固定格式的文件,他可以处理一条或者多条命令,文件的扩展名是:.cmd或者.bat,文本里面的每一行就是一条处理指令,双击运行它的时候,Windows就会调用cmd.exe去运行它。

接着我们来认识第一条指令:echo和@

@echo off

通常我们将这条指令写在我们批处理文件的第一行,因为有了这条指令之后,当我们在运行.bat的时候,就不会将文件里面的内容打印出来了,如果没有这句话,会先去将文件里面的内容打印在屏幕上,通常我们是不希望使用者了解里面的代码结构的.

第二条指令:set

set a=1
set string1=abcdefg

使用set命令,我们可以设置变量,其中“a”和“string1”就是我们设置的变量,可以直接给设置的变量赋值。

当我们希望将设置的变量显示在屏幕的时候,需要在变量的前后带上“%”,然后使用echo命令将设置的变量进行回显。

如下:

echo %a%
echo %string1%

当我们需要输出空行的时候,使用:“echo.”,其中“.”必须紧跟在echo命令的后面,而且“.”也可以被,:;”/等任一的符号代替,这样我们就会输出一个空行,相当于敲了一个回车。

第三条指令:REM 和 ::

这两条指令的作用是帮助我们进行指令的注释,类似于C++中的:“/**/”和“//”

REM set a=1
::set string1=abcdefg

第四条指令:PAUSE

pause在指令中的作用是暂停,当我们需要在文件运行的中间让其暂停一下,看一下我们的输出,就会使用PAUSE命令,然后在控制台就会显示:“请按任意键以继续”,当我们按下任意键之后,文件就会继续运行了,当我们希望在屏幕上显示自己的语句的时候,可以这样写:

echo 其他提示语 & pause > nul

这样在屏幕显示的就是我们自己设置的提示语了。

第五条指令:errorlevel

通常程序执行之后会有一个返回值,来标志这次程序执行的结果,一般默认值为0,程序执行错误的时候会设置成:1.
使用:echo %errorlevel%来显示上一句指令的返回值。

第六条指令:title

使用这个指令来改变cmd窗口的名字,个人感觉作用不大。

::使用之后就会显示新的标题框了
title 新标题   

第七条指令:start

作用:启动一个单独的窗口以运行指定的程序或命令

当我们在cmd窗口输入:help start之后,然后回车,就会给我们弹出start命令的解析:

但是通常我们使用start命令很简单:strart  “执行程序的绝对路径” “执行路径的参数”

或者我们可以将写好的批处理文件放在和要执行的程序同一个目录下面,这样我们就只需:start 程序名 程序参数,这样调用就默认是在批处理文件的同级目录。

第八条指令:assoc和ftype

assoc:设置文件扩展名的关联,关联到文件类型

ftypr:设置文件类型的关联,关联到执行程序和参数

解释:当我们打开一个.txt后缀的文件,系统不是根据.txt判断,打开这个程序应该用notepad.exe打开,而是先去根据.txt来判断这个文件属于txtfile这种文件类型,然后再根据txtfile这种文件类型关联的对象是:txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1,然后再用notepad.exe打开txt文件。

我们可以使用命令:assoc          来显示文件夹中所有的文件关联到的文件类型

可以使用命令:       assoc.txt      来显示文件夹中.txt文件所关联的文件类型,输出:.txt=txtfile

可以使用命令:       assoc.exe    来显示文件夹中.exe文件所关联的文件类型,输出:.exe=exefile

我们可以使用命令:ftype             来显示文件夹中所有文件类型关联的执行程序

可以使用命令:       ftype txtfile    来显示文件夹中txtfile类型的文件打开使用的是什么程序,

输出:txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1

可以使用命令:       ftype exefile   来显示文件夹中exefile类型的文件关联的是什么执行程序

输出:exefile="%1" %*

第九条指令:call指令

如果你想在某一批处理程序中调用另外一个批处理文件,就是用call指令。

现在我们在E:\根目录建立Temp.bat,内容如下:

echo off
echo this is Temp.bat

在E:\资料目录下建立Zzzmain.bat,内容如下:

echo off
call E:\Temp.bat
echo this is Zzzmain.bat
pause

当我们运行Zzzmain.bat的时候就会显示:

call 指令调用另外的批处理文件的时候,如果两个批处理文件没有在同一个文件里面,那么调用的文件就需要把他的路径加上,如果调用的批处理文件需要参数:call ..\..\×××.bat  参数

第十条指令:attrib指令

显示或者更改文件属性

例子:attrib +a +s +h Temp
上面的命令将文件夹Temp属性设为存档、系统、隐藏属性,这条命令是在Temp文件夹的所在路径运行的,但是如果没有在Temp路径的话,就需要加上Temp的路径了。

这是一些常用的指令,之后还会介绍一些其他的有关操作,比如:字符串操作和流程控制之类的相关内容。

Windows批处理文件(.bat文件和.cmd文件)介绍以及简单使用相关推荐

  1. Windows批处理文件(.bat文件和.cmd文件)简单使用

    cmd文件和bat文件的区别,从文件描述中的区别是,cmd文件叫做:Windows命令脚本,bat文件叫:批处理文件,两者都可以使用任意一款文本编辑器进行创建.编辑和修改,只是在cmd中支持的命令要多 ...

  2. Windows使用bat脚本上传文件到Linux(免密上传)

    在工作中接到了使用bat命令定时上传文件到Linux的需求,总是需要手动输入密码挺麻烦,搞了两个比较简单的免密上传的方法.一.使用OpenSSH.二.使用FTP 一.使用OpenSSH bat内容在: ...

  3. windows之bat之批处理复制文件

    下面命令可以实现把文件拷贝到制定的目录 @echo off rd /s/q C:\Users\Administrator\Desktop\muserver md C:\Users\Administra ...

  4. windows——批处理文件(.bat)详解

    这里写目录标题 一.简介 二.用法命令 echo 命令 @ 命令 goto 命令 rem 命令 pause 命令 call 命令 start 命令 choice 命令 if 命令 for 命令 pin ...

  5. Windows批处理文件*.bat

    Windows批处理文件 [ 一.什么是批处理 ] 批处理(Batch),也称为批处理脚本.顾名思义,批处理就是对某对象进行批量的处理.批处理文件的扩展名为 bat . 目前比较常见 的批处理包含两类 ...

  6. win10的bat文件或者cmd文件关联了文本编辑器导致无法运行

    可以参考博客用dos命令修复文件关联的方法 遇到过很多次这个情况,因为我之前修改了bat文件默认打开程序为npp结果导致运行.bat文件就提示没有与之关联的程序来执行该操作 我们只需要以管理员方式启动 ...

  7. Windows 批处理文件bat执行完自动退出cmd黑窗口

    碰见一个很尴尬的事情,有一个从一个文件夹复制一些文件到另一个文件的批处理文件,每次执行复制完之后还需要手动点击关闭cmd.exe黑窗口,很麻烦.看到网上其他先行者说的比较多的解决方案是在bat文件末尾 ...

  8. Windows下bat脚本(cmd命令学习)

    怎么创建bat文件? ①使用copy con 文件名 这样既可在黑窗口里面书写bat命令,然后写完后按ctrl+z结束编辑 ②使用edit来创建(很古老已不用) ③使用记事本,改扩展名为bat(现在几 ...

  9. Windows下的批处理文件.bat/.cmd简介及常用命令

    写在前面: 提起批处理,或者 .bat/.cmd 为后缀名的文件,大家可能都见过,也许会比较陌生,这并不是一种新的编程语言或者一种很前沿的技术,在早期的windows系统下的计算机,其实只有一个黑框框 ...

  10. 用bat文件运行cmd的方法

    每次要使用Mysql中的一些工具,比如要备份数据库,都要先运行CMD,再进入Mysql所在的目录,这样做多了就觉得很麻烦. 可以有一个快捷的方法,只要双击一下批处理文件(bat),就打开CMD进入指定 ...

最新文章

  1. java 字符串拼接优化_JAVA字符串拼接效率
  2. jQuery的使用及关于框架造型(转)
  3. 完全二叉树最小深度_二叉树:我有多少个节点?
  4. 图形工作站计算机大全,图形工作站价格怎么样 图形工作站报价大集锦【图文】...
  5. 文件上传之Apache commons fileupload使用
  6. OpenCV3学习(10.4)基于KNN的背景/前景分割算法BackgroundSubtractorKNN算法
  7. 性能测试系列:高可用测试linux常用命令
  8. TensorFlow入门篇(三):MNIST数据集简易分类
  9. 计算机的组成 —— 耳机与音响
  10. centos将某一目录权限给用户_CenTOS7使用ACL控制目录权限,只给某个用户访问特定目录...
  11. MQTT 以太网IO信号采集模块
  12. 2020爱站网突然关闭,站长们现在用啥工具分析数据了?
  13. 云计算机怎么打游戏,云电脑玩游戏性能怎么样?会不会卡顿
  14. rendered使用效果
  15. mysql 取差值_mysql计算两条数据差值,求大神解答
  16. 互联网时代的B2B电商系统到底意味着什么
  17. 专攻心脑疾病AI市场,数坤科技完成创世伙伴领投2亿元B轮融资
  18. git clone unexpected disconnect while reading sideband packet
  19. 高德公布2016年度交通报告:十大堵城上榜
  20. html5 序列帧播放器,H5序列图片视频化播放

热门文章

  1. 国内国外常用外包平台大全汇总!
  2. android ios 对比 组件_Android和iOS的区别(从开发角度比较)
  3. Lua调试:getinfo详解
  4. linux+硬盘rd5,BackTrack5(BT5)硬盘安装完美教程 亲测可用
  5. 用思维导图描绘5G场景
  6. ISP对pptpd及1723端口的动态管控初探
  7. vcode——自用插件
  8. 前端二维表转化树结构。支持无限套娃
  9. win10声音控制面板扬声器默认设备显示未插入扬声器
  10. 1062lcd在dxp哪个库_protel dxp 2004 元件库中的常用元件所在位置