【1】echo 命令简介

echo 命令的常见用法(必须掌握)分为以下几种情况:

一、无参数

  作用:显示当前echo的状态:处于打开或关闭状态。

  新建一个文本文件,命名为echo,修改类型为bat,用Notepad++打开,编辑以下内容:

 echo
echo on
echo
echo off
echo
pause

  运行结果:

二、有参数

  1. 参数为[on/off]。作用:on打开命令的回显状态;off关闭命令的回显状态。关于“回显”,可以理解为:重复显示。
  2. 参数为message。 作用:打印message内容。
  3. echo前面加@与否。 作用:加@代表不显示当前行命令自身;否则反之。
  4. 参数 message > 文件。 作用:把message内容写入文件中,其中“>”表示“清空另写入”。
  5. 参数 message >> 文件。 作用:把message内容写入文件中,其中“>>”表示“追加再写入”。
  6. 其他.....

  为了更好的理解以上各种情况,举例如下:

  1> 新建一个文本文件,命名为echo1,修改类型为bat,用Notepad++打开,编辑以下内容:

 echo off
echo
@echo off
echo
@echo on
echo
echo on
echo
pause

  运行结果:

  简单分析:

  第 1 行:echo前没有加@,那么显示当前行命令本身;off表示关闭命令的回显状态。

  第 2 行:参数为“123”,上一句已经关闭了命令的“回显”状态,那么直接显示命令执行的结果即123

  第 3 行:echo前加@,那么不显示当前行命令本身(其实,即使不加也不会显示!请往下看);off表示仍旧为关闭命令的回显状态。

  第 4 行:同第二行,直接显示命令的执行结果即456

  第 5 行:echo前加@,那么不显示当前行命令本身(其实,即使不加也不会显示!请往下看);on表示打开命令的回显状态。

  第 6 行:参数为“789”,由于第五行已经打开命令的回显状态,所以执行此行命令需要重复显示命令,即为:F:\studybat>echo 789

  第 7 行:由于第五行已经打开命令的回显状态,所以执行此行命令需要重复显示命令,即为:F:\studybat>echo on

  第 8 行:与第六行同理

  第 9 行:为了查看显示结果,特此暂停命令。以下示例同理再不做解释。

2> 新建一个文本文件,命名为echo2,修改类型为bat,用Notepad++打开,编辑以下内容:

 @echo off
echo
echo off
echo
echo on
echo
@echo on
echo
pause

  运行结果:

  简单分析:

  第 1 行:echo前加@,那么不显示当前行命令本身;off表示关闭命令的回显状态。

  第 2 行:由于第一行已经关闭命令的回显状态,直接显示此行命令的执行结果为123

  第 3 行:由于第一行已经关闭命令的回显状态,而且off表示仍旧关闭命令的回显状态,所以无输出。

  第 4 行:由于第三行仍旧关闭命令的回显状态,直接显示此行命令的执行结果为456

  第 5 行:由于第三行仍旧关闭命令的回显状态,所以此行命令不进行回显。但是,on表示打开命令的回显状态。

  第 6 行:由于第五行打开命令的回显状态,所以执行此行命令需要重复显示命令,即为F:\studybat>echo 789

  第 7 行:由于第五行打开命令的回显状态,但是echo前加@,所以执行此行命令不重复显示命令。on表示仍旧打开命令的回显状态。

  第 8 行:与第六行同理。

  3> 新建一个文本文件,命名为echo3,修改类型为bat,用Notepad++打开,编辑以下内容:

 @echo off
echo
echo off
echo
@echo on
echo
echo on
echo
pause

  运行结果:

  简单分析:

  第 1 行:echo前加@,那么不显示当前行命令本身;off表示关闭命令的回显状态。

  第 2 行:参数为“123”,由于第一行已经关闭命令的回显状态,执行此行命令直接反馈结果为123

  第 3 行:由于第一行已经关闭命令的回显状态,所以不再重复显示此命令;off表示仍旧保持关闭回显状态。

  第 4 行:参数为“456”,由于第三行仍旧关闭命令的回显状态,执行此行命令直接反馈结果为456

  第 5 行:由于第三行仍旧关闭命令的回显状态,所以不再重复显示此命令;至于@可以忽略不考虑,但是on表示打开命令的回显状态。

  第 6 行:由于第五行打开命令的回显状态,所以执行此行命令需要重复显示命令,即为F:\studybat>echo 789

  第 7 行:由于第五行打开命令的回显状态,所以执行此行命令需要重复显示命令,即为F:\studybat>echo on 当然,on表示仍旧打开命令的回显状态。

  第 8 行:由于第七行仍旧打开命令的回显状态,所以即与第六行同理。

  4> 新建一个文本文件,命名为echo4,修改类型为bat,用Notepad++打开,编辑以下内容:

 echo off
echo
@echo off
echo
echo on
echo
@echo on
echo
pause

  运行结果:

  简单分析:

  第 1 行:echo前无@,显示此行命令,即为:F:\studybat>echo off ;off表示关闭命令的回显状态。

  第 2 行:参数为“123”,由于第一行已经关闭命令的回显状态,执行此行命令直接反馈结果为123

  第 3 行:由于第一行已经关闭命令的回显状态,所以不显示此行命令状态。off表示仍旧关闭命令的回显状态。

  第 4 行:参数与“456”,由于第三行仍旧关闭命令的回显状态,执行此行命令直接反馈结果为456

  第 5 行:由于第三行仍旧关闭命令的回显状态,不显示此行命令。但是,on表示从此打开命令的回显状态。

  第 6 行:由于第五行打开命令的回显状态,所以执行此行命令需要重复显示命令,即为F:\studybat>echo 789

  第 7 行:由于第五行打开命令的回显状态,但是echo前加@,所以不显示此行命令。on表示仍旧打开命令的回显状态。

  第 8 行:由于第七行仍旧打开命令的回显状态,所以执行此行命令需要重复显示命令,即为F:\studybat>echo 012

  5> 新建一个文本文件,命名为echo5,修改类型为bat,用Notepad++打开,编辑以下内容:

 echo on
echo I love bat > a.txt
echo I love bat too >> a.txt
pause

  运行结果:

  通过以上四个例子的分析,如上此例的终端结果就不再做分析。

  另外,在当前目录(即文件夹)中会自动(当然,不存在情况下会先自动生成一个;存在情况下直接按命令写入)生成一个a.txt文本文件,其内容如下:

  简单分析:

  第 2 行:新建文本文件a.txt,写入内容:I love bat

  第 3 行:在文件中追加内容:I love bat too

  注意:文件也可以为其他任意路径,任意名称等。在此不再赘述。

  6> 新建一个文本文件,命名为echo6,修改类型为bat,用Notepad++打开,编辑以下内容:

 @echo off
echo I love bat > b.txt
echo I love bat too >> b.txt
echo I hate bat > b.txt
pause

  运行结果:

  根据前四个示例的情况分析,此例终端结果无任何内容,所以不再呈现。还不理解?请回头再看看前四个例子。

  另外,在当前目录(即文件夹)中会自动(当然,不存在情况下会先自动生成一个;存在情况下直接按命令写入)生成一个b.txt文本文件,其内容如下:

  简单分析:

  第 2 行:新建(因为实际我本地并没有这个文件)文本文件b.txt,写入内容:I love bat

  第 3 行:在文件中追加内容:I love bat too

  第 4 行:清空文件的所有内容,重新再写入内容。具体内容为:I hate bat

  注意:例5与例6的联系。理解“>” 与 “>>”的区别。

  7> echo 字符串 & echo 字符串 ......

  &类似and的意思,逻辑运算,用来显示多行数据。新建一个文本文件,命名为echo7,修改类型为bat,用Notepad++打开,编辑以下内容:

 echo abc & echo def & echo ghi
pause

  运行结果:

  8> 其他

  

【2】@命令简介

  结合以上的示例,不难看出,@命令的作用很简单:

   命令前加@符号,表示不显示@后面的命令。

  举一个不和谐的例子:在入侵过程中(使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。

Good Good Study, Day Day Up.

顺序  选择  循环  总结

批处理命令——echo 和 @的更多相关文章

  1. DOS批处理命令-echo

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

  2. DOS批处理命令

    1.echo的用法(echo /? --查看帮助) echo off/on  打开关闭回显功能(@echo off 关闭回显并且不需要回显 echo 命令) echo,   显示空行(也可以是; . ...

  3. 批处理命令——call 和 start

    一.call命令总结 [1]call命令简介 学过汇编或C的朋友,肯定都知道call指令表示什么意思.其实,在这里它的意思也是一样的.在批处理脚本中,call命令用来从一个批处理脚本中调用另一个批处理 ...

  4. 批处理命令 BAT备份MySQL数据库

    批处理命令 BAT备份MySQL数据库 作者: 字体:[增加 减小] 类型:转载 时间:2009-07-23我要评论 MySQL数据的备份工具也许有很多,在这我要给大家分享一下通过DOS批处理命令和M ...

  5. SQL Server数据库备份:通过Windows批处理命令执行

    通过Windows批处理命令执行SQL Server数据库备份 建立mybackup.bat ,输入以下内容直接运行该脚本,即可开始自动备份数据库也可把该脚本加入windows任务计划里执行. --- ...

  6. TFS 自动同步Server 端文件的批处理命令

    TFS 自动同步Server 端文件的批处理命令 目前在我们组的工作中很多时候需要将TFS上Server端的代码自动无人值守的同步到本地中来, 找到了一些解决方案的资料http://bbs.scmro ...

  7. 批处理命令——goto 和 :

    谈起goto,相信大家应该想到的是面向过程编程.其实,这就相当于当有人向你谈起class,意味着你就懂得面向对象编程.如果你不懂,那么你们的沟通将会很困难.不懂我说的啥意思吗?请参见曾经分享王路的一篇 ...

  8. BATCH(BAT批处理命令语法)

    bat语法备忘扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件[@more@] bat语法备忘扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的 ...

  9. 批处理:echo的用法

    批处理:echo的用法 若要用 echo 命令显示一条命令,可用下述语法:  echo [message] 参数 ON|OFF   指定是否允许命令的回显.若要显示当前的 ECHO 的设置,可使用不带 ...

随机推荐

  1. Selenium2学习-023-WebUI自动化实战实例-021-获取浏览器显示区域大小,通过 WebDriver 截图功能

    之前的博文 020-JavaScript 在 Selenium 自动化中的应用实例之二(获取浏览器显示区域大小) 简述了通过 JavaScript 获取浏览器显示区域大小,此文将简述另一种获取浏览器显 ...

  2. zabbix使用tokudb引擎替换innodb引擎

    zabbix数据量大,数据量增长很快,使用tokudb可以更好的压缩 使用tokudb,用percona 或mariadb数据库 1.查看数据库版本 (1)登录数据库的时候可以看到 (2)status ...

  3. 用java给php写个万能接口

    package helloworld; import java.io.IOException; import javax.servlet.ServletException; import javax. ...

  4. Oracle数据库之PL/SQL基础

    介绍PL/SQL之前,先介绍一个图像化工具:Oracle SQL Developer 在oracle的开发过程中, 我们难免会使用第三方开发的软件来辅助我们书写SQL, pl/sql是一个不错的sql ...

  5. Linux bash运维操作日志审计(单服务器)

    目前公司有几台机器比较重要,需要把所有用户的操作记录下来,于是就是参照资料来完成 1. vim /etc/profile.d/oplogrc.sh logdir=/opt/oplog userdir= ...

  6. bootstrap 时间选择器 datetime

    $("'#datetimepicker").datetimepicker({ format: "yyyy-mm-dd hh:ii:ss",//设置时间格式,默认 ...

  7. Effective C++ 2.构造 析构 赋值运算

    //条款07:为多态基类声明virtual析构函数 // 1.若基类的析构函数不定义为虚函数,由于基类的指针或引用可以指向派生类的对象,则在删除基类对象的时候可能会出错,导致破坏数据结构. // 2. ...

  8. PostgreSQL Replication之第十三章 使用PL/Proxy扩展(1)

    在这里添加一个slave,真的有一个很好的可扩展性的策略,这基本上足以满足大多数现代应用程序.使用一台服务器的情况下,许多应用程序就会完美地运行,您可能想添加以副本以给基础设施增加一些安全,但在许多情 ...

  9. Leetcode: String to Integer

    Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. ...

  10. [Reprint]C++普通函数指针与成员函数指针实例解析

    这篇文章主要介绍了C++普通函数指针与成员函数指针,很重要的知识点,需要的朋友可以参考下   C++的函数指针(function pointer)是通过指向函数的指针间接调用函数.相信很多人对指向一般 ...