• 2 学习基础命令行命令


    回显和输出相关的命令

    ECHO是最简单也是最常用的命令。

    我们首先需要学习一些和显示相关的内容毕竟我们会经常对着这个窗口,我们通过它了解执行的情况和得到的结果,甚至需要用它来debug

    当然,我们也可以让它变得很炫,甚至可以做个星球大战的动画,但是,你必须从学习echo开始。

    回到刚才的例子,让我们重新执行一下,看一下这个黑乎乎的界面上有哪些信息。

     

     

    Echo @

     *提示:你可以首先通过“echo /?”去了解一些有关它的内容。

    @符放在命令前,将关闭命令的回显,就是说不会将命令本身打印出来。例如我们在batch文件里执行“echo hello kitty”看到的结过会先显示我们执行的命令和执行所在目录“C\echo hello kitty”然后紧接着显示他的执行结果“hello kitty

    echo 的单独用法,主要有下面几个,而组合用法则很多,会在后面的章节讲解:

    1.打开/关闭回显功能

    格式:echo [{ on|off }]

    会在很多别人的实例程序看到“@echo off”作为batch的开头,它将关闭后续的命令回显和自己的回显,使得后面的命令不必在其前方加“@”字符就可以隐藏命令;

    2.输出指定的信息

    格式:echo 内容

    这个是最常用也是很简单的,但也是最常用的;

    3.输出空行

    格式:echo.

    ”.”紧跟在echo后面,他们之间不能有空格,这个命令相当于一个回车符,他可以被DOS管道传递到其他命令中去例如“echo. |time”

    现在让我们来自己写一个batch文件,看看echo的效果

    Echodemo.bat

    1.

    2.

    3.

    4.

    5.

    6.

    7.

    8.

    9.

    10.

    echo hello kitty!

    @echo.

    @echo hello kitty!

    @echo.

    echo off

    echo hello kitty!

    echo.

    echo. |time

    echo.

    pause

    REM ::

    REM为注释命令,一般用来给程序加上注解,该命令后的内容不被执行,但能回显。

    ::”也可以起到REM的注释作用,而且更简洁有效。

    这里需要说明的是,任何以:冒号开头的字符行,在批处理文件中均被视为标号,而直接忽略其后的所有内容,而“:”后面如果紧跟的是一个字母或数字开头的字符串,会被goto语句识别,成为一个有效的标号;而“:”后面紧跟一个非字母和数字的特殊符号,goto将无法识别,就可以起到注释作用了,“::”只是一种约定俗成的写法,其实“:+”也能起到相同的作用。

    Q.REM::有什么区别么?

    A.是的,“::”后的字符行在执行时不会回显,无论是否使用echo on打开命令回显状态,命令解释器都认为它是一条无效的命令行,就这点来看REM在某些场合更适用;另外,REM可以用在config.sys中。

    Pause

    在后面的例子里会经常看到这个命令,顾名思义,这个命令就是暂停,等待用户按任意键继续。如果没有这个命令,批处理程序会在执行完成后自动关闭,那样我们就看不到窗口和回显信息了。

    使用pause命令你会看到如下:

    要显示其他提示语,可以这样用:

    Echo 其他提示语 & pause > nul

    有时候,我们肯能希望我们的窗口不是这么的单调乏味,或者我们希望某些内容看起来更醒目,也许窗口应该以我们的程序命名。这时候你就需要用到 COLORTITLE这些命令了。

    TITLE命令

    用来设置cmd窗口的标题,你可以在batch里这么写:

    @echo off

    title hello kitty software

    pause

    COLOR命令

    设置默认的控制台前景和背景颜色

    COLOR [attr]

        attr     指定控制台输出的颜色属性

    色属性由两个十六进制数字组成,第一个为背景,第二个为前景,如果不带参数执行该命令颜色会被还原到cmd.exe启动时的颜色;如果使用相同的前景和背景颜色,COLOR命令会将ERRORLEVEL设置为1.

    @echo off

    color fc

    pause

     

     

     

     

  • 相关阅读:
    一些杂题(9.23)
    【数据结构】手撕排序算法(中)交换排序 (冒泡排序、快速排序的递归方式(挖坑法、前后指针法、左右指针法))、归并排序的递归方式
    Hook API
    ModuleNotFoundError_ No module named ‘Crypto‘
    【2014年数据结构真题】
    工具及方法 - 使用DOS批处理给Windows文件批量改名
    2023年【T电梯修理】考试题及T电梯修理考试报名
    【单片机仿真】(一)Proteus8.9 安装教程
    四个方面来带大家学习数据分析,数据分析精通不要太简单
    Python从入门到入土-基本技能
  • 原文地址:https://blog.csdn.net/biyusr/article/details/126552264