• DOS批处理命令-CMD命令


    CMD命令是重新开始一个命令解析器的实例。当然,他的功能并不止这么简单。

    Windows コマンド インタープリターの新しいインスタンスを開始します。

    语法结构

    CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]  [[/S] [/C | /K] 文字列]

    cmd是一个很重要的命令,接下来,应该说很多命令都跟cmd有关系吧!!

    接下来,我们来分析cmd /?帮助中每条语法含义。

     1、cmd  重新开始一个命令解析器的实例

    具体什么作用呢?我们知道我们要打开cmd命令窗口的时候,输入的命令就是cmd命令。

    也就是说,在运行命令窗口输入的cmd并执行,弹出的那个命令窗口就是cmd的一个实例呢?姑且我们就先这么理解

    还有就是,我们正在执行别的命令程序,比如说powershell程序,我们输入cmd并回车运行,这个时候,我们就回到cmd命令窗口了。

    这个时候,会在窗口上回显版权信息。

    运行效果:

    F: mp>cmd
    Microsoft Windows [Version 6.2.9200]
    (c) 2012 Microsoft Corporation. All rights reserved.

    2、cmd [/C | /K] 文字列]

    A. cmd /C 文字列

    文字列指定的命令执行过以后,关闭命令窗口。

    例如:win+r打开运行窗口以后,输入命令[cmd /c notepad],并回车执行

    运行效果就是,通过cmd命令打开记事本程序,当点击X以后关闭记事本后,紧接着,cmd命令窗口也会被关闭。

    B. cmd /K 文字列

    文字列指定的命令执行过以后,并不关闭命令窗口,而是相当于执行了一次cmd命令,打开一个cmd命令窗口实例。

    例如:win+r打开运行窗口以后,输入命令[cmd /k notepad],并回车执行

    运行效果就是,通过cmd命令打开记事本程序,当点击X以后关闭记事本后,cmd命令窗口不会被关闭。

    而是出现了等待输入命令的等待窗口:C:Usersliuhongying>|(闪烁ing...)

    3、cmd /q    关闭命令回显  想当于cmd执行过一个又执行一个echo off命令

    エコーをオフにします。

    首先,我们先建一个a.bat的文件,文件的内容为:echo hello world

    ①win+r打开运行窗口以后,输入命令[cmd /q],并回车执行

    然后调用a.bat批处理

    运行结果:

    F: mp>echo hello world
    hello world

    ②win+r打开运行窗口以后,输入命令[cmd],并回车执行

    然后调用a.bat批处理

    运行结果:

    F: mp>a.bat

    F: mp>echo hello world
    hello world

    4、 cmd /d     禁止cmd启动时自动执行的处理

    讲解前,我们设置两个环境变数

    HKEY_LOCAL_MACHINESoftwareMicrosoftCommand ProcessorAutoRun ⇒ F: mpa.bat HKEY_LOCAL_MACHINE

    HKEY_CURRENT_USERSoftwareMicrosoftCommand ProcessorAutoRun ⇒ F: mpa.bat HKEY_CURRENT_USER

    F: mpa.bat的内容为【echo %1%】

    然后,我们win+r,并输入cmd回车执行

    执行结果为:

    Microsoft Windows XP [Version 5.1.2600]
    (C) Copyright 1985-2001 Microsoft Corp.

    C:Documents and Settingsliuhy>echo HKEY_LOCAL_MACHINE
    HKEY_LOCAL_MACHINE

    C:Documents and Settingsliuhy>echo HKEY_CURRENT_USER
    HKEY_CURRENT_USER

    C:Documents and Settingsliuhy>

    所以,我们可以得出结论,我们执行cmd的时候,会先执行HKEY_LOCAL_MACHINESoftwareMicrosoftCommand ProcessorAutoRun指向的命令,然后执行HKEY_CURRENT_USERSoftwareMicrosoftCommand ProcessorAutoRun指向的命令,这之后才会停到等待输入命令的状态。

    那么,我们加上/d的开关后呢?

    运行结果为

    Microsoft Windows XP [Version 5.1.2600]
    (C) Copyright 1985-2001 Microsoft Corp.

    C:Documents and Settingsliuhy>

    发现原来我们执行的两个命令不再执行,被跳过了。这就是/d开关的作用。

     5、CMD /E:ON 扩张机能有效 CMD /E:OFF 扩张技能无效

    首先介绍下cmd扩张技能的控制设置

    对于电脑来说(默认来说是有效的)

    注册表HKEY_LOCAL_MACHINESoftwareMicrosoftCommand ProcessorEnableExtensions对应的值为0x1的时候就是有效,如果是0x0就是无效。

    对于用户来说(默认来说是有效的)

    注册表HKEY_CURRENT_USERSoftwareMicrosoftCommand ProcessorEnableExtensions对应的值为0x1的时候就是有效,如果是0x0就是无效。

    并且用户的设置优先级高于用户的优先级。

    ---------------------------------------------------------------------------------------------

    对于命令行的补全技能来说,包括对下面的命令操作的追加或者变更

    コマンド拡張機能には、次のコマンドに対する変更または追加が含まれています。

    DEL または ERASE
    COLOR
    CD または CHDIR
    MD または MKDIR
    PROMPT
    PUSHD
    POPD
    SET
    SETLOCAL
    ENDLOCAL
    IF
    FOR
    CALL
    SHIFT
    GOTO
    START (外部コマンドの起動の変更を含みます)
    ASSOC
    FTYPE

    输入这些命令以后,我们再按tab键的时候,会自动补全后面参数。

    ---------------------------------------------------------------------------------------------

    当我们执行命令CMD /E:OFF命令以后,就会发现当我们使用的tab键的时候不再补全,而是输入一个tab键。

    我理解的这个开关就是这个作用。

    6、CMD /V:ON 延迟环境变数的展开有效 CMD /V:OFF 延迟环境变数的展开无效

    什么是延迟变量扩展呢?简单的说,就是cmd执行的时候不去先匹配变量的值,而是先执行嵌套的命令,然后再去匹配变量的值。延迟变量的匹配使用感叹号来表示。

    具体解释请参考百度百科的解释:http://baike.baidu.com/view/2923132.htm

    首先介绍下cmd延迟环境变数的展开的控制设置

    对于电脑来说(默认来说是有效的)

    注册表HKEY_LOCAL_MACHINESoftwareMicrosoftCommand ProcessorDelayedExpansion对应的值为0x1的时候就是有效,如果是0x0就是无效。

    对于用户来说(默认来说是有效的)

    注册表HKEY_CURRENT_USERSoftwareMicrosoftCommand ProcessorDelayedExpansion对应的值为0x1的时候就是有效,如果是0x0就是无效。

    并且用户的设置优先级高于用户的优先级。

    7、CMD /F:ON 文件或路径补全功能有效     CMD /F:OFF 文件或路径补全功能无效

    当文件或路径补全功能有效的时候,可以使用快捷键来进行补全

    ctrl+d:补全路径

    ctrl+f:补全文件名

    电脑的设置:

    HKEY_LOCAL_MACHINESoftwareMicrosoftCommand ProcessorCompletionChar
    HKEY_LOCAL_MACHINESoftwareMicrosoftCommand ProcessorPathCompletionChar

    使用16禁止的设置文字 (例 0x4 是 Ctrl-D、0x6 是Ctrl-F)。


    用户的设置:

    HKEY_CURRENT_USERSoftwareMicrosoftCommand ProcessorCompletionChar
    HKEY_CURRENT_USERSoftwareMicrosoftCommand ProcessorPathCompletionChar

    使用16禁止的设置文字 (例 0x4 是 Ctrl-D、0x6 是Ctrl-F)。


    用户的设置的优先级比电脑设置的优先级高。
    命令行的设置的优先级比注册表的优先级高。

    /F:ON 补全技能打开的場合、使用两个组合键控制 (Ctrl-D 是路径补全、Ctrl-F 是文件名补全) 

    注册表使用的指定的快捷键无效的情况下,使用空格来进行补全。

    cmd的阐述还有一个开关/s不知道是干嘛用的。以后有空的时候在研究下。

     [[/S] [/C | /K] 文字列]

  • 相关阅读:
    2009 中国软件技术英雄会
    《致加西亚的信》一书中的一个隐蔽错误
    英文版XP不能打开带有中文路径的chm文件的解决办法
    NetBeans 时事通讯(刊号 # 49 Mar 17, 2009)
    对《致加西亚的信》的异议
    NetBeans 时事通讯(刊号 # 49 Mar 17, 2009)
    Linux运行时I/O设备的电源管理框架
    groovy正则提取完整版本
    Linux 流量监控软件 NetHogs
    Re: 在北京待着到底为了什么
  • 原文地址:https://www.cnblogs.com/gekal/p/3219260.html
Copyright © 2020-2023  润新知