Skip to content

Windows 批处理脚本和 cmd

官方文档:

参考:

前言

cmd 是 Windows 操作系统中的命令行界面(CLI),也称为命令提示符(CMD)或批处理文件。

它是 Windows 命令行界面的主要组成部分,用于用户与 Windows 操作系统进行交互。

cmd 的全称叫做:Command 。可以叫做命令行,也可以叫做终端。它原先是 windows 的 Doc 操作系统,就如同 Linux 系统中的命令输入界面。但是后面微软开发了 windows 图形界面。但是还是保留了 Doc 的操作入口和一些基本指令。

命令行和批处理不是同一种技术,但是它们有关联。

命令行是一种与操作系统或应用程序交互的方式,可以输入命令并查看输出。批处理是一种使用命令行的技术,可以将一系列命令写入一个文件,并自动执行它们。批处理文件通常以 .bat 或 .cmd 为扩展名,可以用于自动化重复性或复杂的任务。

学习命令行和批处理的建议

  • 熟悉 Windows 命令的语法和功能,可以参考 Microsoft Learn 上的 Windows 命令参考。
  • 练习使用常用的命令,如 dir, cd, copy, del, echo, find, ping, ipconfig 等,可以在命令行中输入 help 或 /? 查看命令的用法和选项。
  • 学习如何使用变量、运算符、条件语句、循环语句等编写批处理文件,可以参考 Microsoft Docs 上的 批处理文件。
  • 查看一些批处理文件的示例,如 如何使用批处理文件创建备份,如何使用批处理文件删除临时文件 等,可以在网上搜索或参考一些书籍或教程。
  • 测试和调试你的批处理文件,可以使用 echo, pause, rem 等命令来显示或注释你的代码,也可以使用 @echo off, setlocal, endlocal 等命令来控制你的输出和变量范围。
  • 保持学习和探索,可以尝试解决一些实际的问题或挑战,也可以学习一些高级的技术,如 PowerShell, WSL, Python 等。

一、起源和发展

cmd 的起源可以追溯到 Windows 3.1 时代,当时的命令行界面主要由两部分组成:一个命令编辑器,一个标准图形用户界面。

而随着时间的推移,这种二元组合的界面变得越来越复杂,用户需要在两个界面之间来回切换,这给使用带来了很大的不便。为了解决这个问题,人们开始开发一种新的命令行界面,这个界面只有一个命令编辑器,没有图形用户界面。这个新的命令行界面被称为命令行界面 (CLI),它可以让用户在一个界面中完成多个任务。

cmd 的发展历程非常曲折。最初的 cmd 只有一些最基本的命令,例如 dir、ping、and 等等。随着时间的推移,cmd 不断地扩展和增强,支持了更多的命令和功能。

例如:

  • cmd 在 Windows 95 和 Windows 98 中引入了管道(pipe)命令,可以用来执行多个管道操作;
  • 在 Windows NT 中,cmd 支持了重定向(redirect)命令,可以将输出重定向到文件或标准输出。
  • 此外,cmd 还支持了许多高级特性,例如管道(pipe)、重定向(redirect)、批处理文件(batch file)等等。

有趣的例子是 “pinging” 命令。在最初的 cmd 中,ping 命令用于测试网络连接是否正常。但是,有一天,有一位程序员在尝试利用这个命令来检测服务器的响应速度时,发现它可以非常有趣地工作。他编写了一个简单的脚本,将一些不同的参数传递给 ping 命令,例如延迟时间、数据包大小、超时时间等等。他发现,当把超时时间设置为几分钟时,它会在不停地向服务器发送回显请求,直到超时或者收到响应为止。这个脚本后来成为了一个非常受欢迎的工具,可以用来检测网络连接速度、玩网络侦探游戏等等。

总之,cmd 是一个非常重要的工具,它让用户可以更方便地与 Windows 操作系统进行交互。随着技术的不断发展和进步,cmd 也在不断地扩展和增强,支持更多的功能和特性。

二、和 DOS 的关系

很多人认为,命令提示行就是 DOS,这么说也不算很错,当然它们肯定不是一个东西。

DOS 是 Disk Operating System 的缩写,中文翻译是“磁盘操作系统”。

DOS 是一个单用户、单任务的操作系统,采用的是对计算机手动输入命令行的方式下,对计算机进行操作和控制。由于 DOS 可以直接访问硬件,因此它很适合拿来控制嵌入式设备。

很多 DOS 命令在 Windows 下的命令提示符(CMD)下是照样可以使用的,但 DOS 和 CMD 是不同的,你在 Windows 操作系统里进的 DOS(即输入 CMD 进命令提示符)不是纯 DOS,只是为方便某些需求而模拟出来的 DOS,而纯 DOS 本身就是一种操作系统。

其实 DOS 也有中国人开发的中文版本,可以处理汉字的,下次写篇介绍早期操作系统的文章再说。

三、常用命令

介绍一些基本的操作和指令。

我们这些指令的学名都是 DOC 命令

命令介绍
D: 或 C:跳转指定磁盘
cd XXX跳转指定文件夹
cls清除屏幕内容
chkdsk检测磁盘并显示状态报告
cmd打开一个新的命令行窗口
del xxx删除文件
dir显示当前地址下的文件夹和子文件
echo显示消息(主要在批处理脚本中会大量使用)
exit关闭 cmd 程序
help显示命令行的帮助信息
time显示当前系统时间,并支持修改当前系统时间
type xxx显示文本文件的内容
ver显示 windows 的版本
where XXX例如 where java 可以看到 java.exe 的执行目录 这种可以帮我们检查该指令的执行 exe 是哪里

当我们通过环境变量配置完路径之后,我们 cmd 输入的相关指令就在该路径下遍历查找是否有 exe 文件可以执行相关命令。

如果能够找到,就会有该 exe 执行,如果找不到。那么就会提示 :不是内部或外部命令,也不是可运行的程序或批处理文件。

4.快捷技巧

输入文件名称时,可以通过 tab 键自动补全 (前提条件是该路径下只有这一个文件名匹配) 在文件资源器中的地址栏输入 cmd+回车 可以快速打开 cmd 并且自动跳转到该文件目录下。 我们如果想了解 windows 下的批处理命令、并配置自己的批处理。那么你需要了解的就是 doc 指令。批处理其实和我们在 cmd 中输入命令效果是一样的。

以下是一些常用的 CMD 命令:

1、启动一个或多个程序:可以使用 start 命令来启动一个或多个程序。例如,要启动 notepad.exe,可以输入以下命令:start notepad.exe

2、停止一个或多个程序:可以使用 taskkill 命令来停止一个或多个程序。例如,要停止正在运行的 notepad.exe,可以输入以下命令:taskkill /im notepad.exe

如果要强制停止程序而不提示用户,使用以下命令:taskkill /f /im notepad.exe

3、查看正在运行的进程:可以使用 tasklist 命令来查看正在运行的进程。例如,要查看所有正在运行的进程,可以输入以下命令:tasklist

4、查找文件:可以使用 find 命令来查找包含特定文本的文件。例如,要查找包含“hello”文本的所有.txt 文件,请输入以下命令:find "hello" *.txt

5、复制文件:可以使用 copy 命令来复制文件。例如,要将名为“file1.txt”的文件复制到名为“file2.txt”的新文件中,请输入以下命令:copy file1.txt file2.txt

6、移动文件:可以使用 move 命令来移动文件。例如,要将名为“file1.txt”的文件移动到名为“myfolder”的文件夹中,请输入以下命令:move file1.txt myfolder

7、重命名文件:可以使用 ren 命令来重命名文件。例如,要将名为“file1.txt”的文件重命名为“file2.txt”,请输入以下命令:ren file1.txt file2.txt

8、删除文件:可以使用 del 命令来删除文件。例如,要删除名为“file1.txt”的文件,请输入以下命令:del file1.txt

9、显示当前目录下的所有文件和子目录:可以使用 dir 命令来显示当前目录下的所有文件和子目录。例如,要显示当前目录下的所有文件和子目录,请输入以下命令:dir

10、显示当前日期和时间:可以使用 date 和 time 命令来显示当前日期和时间。例如,要显示当前日期和时间,请输入以下命令:date /t & time /t

11、显示 IP 地址信息:可以使用 ipconfig 命令来显示计算机的 IP 地址信息。例如,要显示计算机的 IP 地址信息,请输入以下命令:ipconfig

12、显示网络连接状态:可以使用 netstat 命令来显示计算机上所有网络连接的状态和协议统计信息。例如,要显示计算机上所有网络连接的状态和协议统计信息,请输入以下命令:netstat -a

13、显示磁盘空间信息:可以使用 dir 和 find 命令来显示磁盘空间信息。例如,要显示 C 盘上可用空间的大小,请输入以下命令:dir c:\ | find "bytes free"

14、显示系统信息:可以使用 systeminfo 命令来显示系统信息。例如,要显示计算机上安装的操作系统版本、处理器类型和总物理内存量,请输入以下命令:systeminfo

15、显示帮助信息:可以使用:help

16、重新启动计算机:在 可以使用 shutdown 命令来重新启动计算机。例如,要重新启动计算机,可以输入以下命令:shutdown /r /t 0

以上为常用命令介绍,其实每个命令都有不少参数,介绍的只是最常用的可能。下一篇将介绍由命令组成的批处理,并用以自动处理一些工作。未完待续…

  • 命令 -help // 第 1 种形式的使用帮助
  • 命令 /? // 第 2 种形式的使用帮助

常用基本命令

  1. dir - 用于显示目录中的文件和子目录列表。
  2. cd - 用于更改当前工作目录。
  3. copy - 用于复制文件。
  4. xcopy - 用于复制目录及其子目录、文件及其属性。
  5. del - 用于删除文件。
  6. rd - 用于删除空目录。
  7. ren - 用于重命名文件或目录。
  8. type - 用于显示文本文件的内容。
  9. cls - 用于清除命令窗口的屏幕。
  10. exit - 用于退出命令窗口。

1,列出所有任务及进程号,杀进程

tasklist

tasklist /? 获取使用帮助

taskkill

taskkill /? 获取使用帮助

2,cd *切换目录*

cd /? //获取使用帮助

cd \ //跳转到硬盘的根目录

cd C:\WINDOWS //跳转到当前硬盘的其他文件

d: //跳转到其他硬盘

cd /d e:\software //跳转到其他硬盘的其他文件夹

​ 注意此处必须加/d 参数。否则无法跳转。

cd.. //跳转到上一层目录

3,netstat 查看网络连接状态

显示协议统计信息和当前 TCP/IP 网络连接。该命令可以查看当前机器建立的所有网络链接状态,以及对应哪个进程。

netstat -help 获取命令行使用帮助信息

netstat -ano //查看网络连接、状态以及对应的进程 id

4,find

find /?获取使用帮助

netstat -ano|find ".8" //使用管道符,进行模糊查询

5,ping

ping -help

6,tracert

tracert 也被称为 Windows 路由跟踪实用程序,在命令提示符(cmd)中使用 tracert 命令可以用于确定 IP 数据包访问目标时所选择的路径。

tracert /? 获取使用帮助

例子:tracert <www.baidu.com>

7、ipconfig #查看自己的 ip

IPv4 地址-----

辅助符号或命令

7,“|”cmd 命令中|代表前一个的输出代表后一个的输入

查找特定 ip 的网络连接及进程号:netstat -ano|find "192.168.1.10"

8,重定向输出符号> >>

将原本输出到命令窗口的内容,转存到文件中,如 jstack 12912 >d:/s.txt 打印线程到指定文件

cmd >重定向输出并覆盖源文件。

​ 例如

​ echo hello >c:\1.txt

​ 1.txt 的文件内容先被清空,然后写入 hello。

cmd >>重定向输出追加到文件末尾

​ 例如:

​ echo hello >c:\1.txt

​ 在 1.txt 文件末尾加上 hello

9,重定向输入符号< <<

cmd < file

​ 使 cmd 命令从 file 读入

cmd << text

​ 从命令行读取输入,直到一个与 text 相同的行结束。除非使用引号把输入括起来,此模式将对输入内容进行 shell 变量替换。如果使用 <<- ,则会忽略接下来输入行首的 tab,结束行也可以是一堆 tab 再加上一个与 text 相同的内容,可以参考后面的例子。

cmd <<< word

​ 把 word(而不是文件 word)和后面的换行作为输入提供给 cmd。

cmd <> file

​ 以读写模式把文件 file 重定向到输入,文件 file 不会被破坏。仅当应用程序利用了这一特性时,它才是有意义的。

cmd >| file

​ 功能同>,但即便在设置了 noclobber 时也会覆盖 file 文件,注意用的是|而非一些书中说的!,目前仅在 csh 中仍沿用>!实现这一功能。

10,终止一直在运行的命令 ctrl+c

有时某个命令一直打印输出结果(如 ping 192.168.1.10 -t),我们想终止这个命令的执行,直接按 ctrl+c 即可。

11,清空 cmd 窗口内容命令 cls

有时 cmd 内容太多,滚动费尽,需要清空屏幕内容,直接输入 cls 即可

12,cmd 命令中,按键盘的向上箭头可以直接复制前一个命令

常用工具

13,常用工具

Process Explorer,查询进程的详细信息,如查询 java 进程启动参数,运行环境,线程信息、网络连接信息、使用了哪些 dll,打开了什么句柄。包含注册表、Socket、文件等等。

下载地址:https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer

验证考核

1,浏览器访问任何一个域名网站(如百度),然后使用 cmd 命令查找到本机到这个网站的网络连接状态

2,持续 ping100 次www.baidu.com,并且输出到d:/pingbaidu.txt

3,假如不通过环境变量中的 java 相关命令如 jps、java, 而是希望使用你机器上装的某个版本 jdk 中命令 jstack.exe(如装在 D:\Program Files\java\jdk1.8.0_101),你会怎么做?

4,你机器上已经启动了一个 smartbi,请告知如何确认 jvm 所有启动参数

批处理

批处理简介

批处理是一种 Windows 系统下的脚本语言,它可以用来自动化执行一系列的命令。批处理文件通常使用 .bat 或 .cmd 扩展名,它们包含了一系列的命令,这些命令可以在 Windows 命令提示符下执行。批处理文件可以用于执行诸如备份、安装软件、配置系统等任务。

与其它如 python 这种解释型编程语言相比,批处理语言更加简单易学,但是它的功能也更加有限。批处理语言主要用于执行简单的任务,例如复制文件、删除文件、创建目录等。而 python 编程语言则更加强大,可以用于开发复杂的应用程序和系统。

如何编写批处理

其实编写批处理程序,也就和编程差不多,随便找个文字处理工具都行。当然,为了避免编码格式的问题,我们一般会使用 cmd 生成 bat 文件,或直接用系统的记事本保存为 bat 格式文档。

打开 CMD 命令提示符。在 Windows 中,可以按下 Win + R 键组合,输入 cmd 并按回车键来打开 CMD 命令提示符。 创建一个新的批处理文件。可以使用 echo 命令来输出一些文本,然后使用 > 符号将其重定向到一个新的批处理文件中。例如,以下命令将输出一条消息并将其写入一个名为 example.bat 的文件中: echo "This is a bat file." >> example.bat 这样我们就在当前目录下生成了一 example.bat 文件,bat 后缀的文件就是 windows 的批处理文件。

格式说明: 1、%VAR_NAME%表示程序使用变量的名称。 @ECHO 命令输出当前光标位置。 IF [condition] 条件语句,如果条件为真,则执行一段语句。

2、注释块:正常使用 :: 或 REM 作为注释符号,这将告诉操作系统忽略接下来的所有内容。批处理还有别的注释方法,比如用 goto 跳过,用:标记。批处理这破玩意真不是一个正经肢本语言,实在是 Windows 的用户太多了,才让它有人去用。

3、设置变量:使用 set 关键字定义变量,例如:set my_variable=hello

4、条件语句:使用 if-else 结构实现条件判断,例如:if "%my_variable%"=="hello" ( echo "Hello!" ) else ( echo "Goodbye!" )

5、循环结构:使用 for 和 do-while 结构实现循环执行,例如:for /l %%i in (1,1,10) do ( echo Line %i of 10 )

6、脚本代码:使用反引号(`)包围的一系列命令或语句,这些命令或语句将被解释为 Windows 操作系统可执行的代码。

7、GOTO [label] 用于跳转到标签。

有了以上基本概念,就可以开始写批处理程序了,程序猿界的传统规矩要从 hello world 开始:

1、Hello world

以下是一个简单的批处理脚本示例,它将输出“Hello, world!”到控制台:

shell
@echo off
echo Hello, world!
12

可以用记事本将这个脚本保存为一个批处理文件,例如 hello.bat。要运行这个脚本,您需要按下 Ctrl + C 组合键,然后打开命令提示符(CMD)并导航(cd 命令)到保存脚本的文件夹。然后,使用以下命令运行脚本: hello.bat 这将运行保存在 hello.bat 文件中的可执行文件,并输出“Hello, world!”到控制台。直接将这个文件拖入命令提示行的黑框框也行哦~

2、做加法

shell
@echo off

set /a sum1=0
set /a sum2=10
echo Sum of numbers: %sum1% + %sum2% = %sum1% + %sum2%
pause>nul

12345678

以上代码用于计算两个数的和并输出结果。pause>nul 等待用户按下任意键后关闭窗口,这个批处理没有任何实际意义,一般也没人用这么傻的东西,这只是为了演示,下面会介绍几个很有实用意义的批处理。

3、查找文件,并输出到文本

shell
@echo off
setlocal enabledelayedexpansion
for /r %%i in (*.txt) do (
  set filename=%%~ni
rem 将当前文件名赋值给变量filename

  echo "!filename!" >> output.txt
rem 将文件名写入output.txt文本文件中
)
pause>nul

123456789101112

在指定目录下查找所有扩展名为.txt 的文件,并将它们的名称输出到一个文本文件中。需要注意的是,它的默认目录在不同的系统上可能不同,win10 一般会在 c:/Users/用户名

4、批量重命名

shell
@echo off
setlocal enabledelayedexpansion

set "oldstring=old"
set "newstring=new"

for /f "delims=" %%i in ('dir /b /a-d') do (
    set "filename=%%i"
    set "newname=!filename:%oldstring%=%newstring%!"
    ren "!filename!" "!newname!"
)
rem 如果没有重命名的文件,提示系统找不到指定的文件并退出。

pause>nul

12345678910111213141516

批量重命名指定文件夹中的文件。将所有存在“old”的文件名更改为以“new”。其中,oldstring 和 newstring 分别是需要被替换的字符串和替换后的字符串。你可以根据自己的需要随便改。这是一个很实用的批处理,比那些重命名软件方便太多了,而且至少不用安装一堆广告软件到系统是吧~

5、自动记录开机时间

shell
@echo off
set "filename=example.log"
set "path=d:\"
set "current_time=%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%.%time:~3,2%.%time:~6,2%"
echo %current_time% >> %path%\%filename%
12345

其中,example.log 是您想要写入的文件名,d:\是您想要写入的路径。将代码保存为.bat 文件,然后放入 Windows 系统的启动文件夹自动运行即可。需要注意的是,现在的 Windows 有权限管理问题,不要把路径设在 C 盘,很可能无法运行,当然你用管理员权限是可以执行的。但没必要不是吗?

*就到这里了,笔者对批处理所知也有限,只能写一点很简单的东西,批处理本身也是一种不算强大的脚本语言。虽然在 Windows 系统上一直没什么存在感!根据本文介绍,其实可以写一个在运行某些程序前修改系统时间,在程序启动以后自动改回来的脚本,这是不是解决了很多小问题~

bat 批处理

命令行

显示如何使用名利: /?

find /? (find 命令的作用)

img

echo 打印输出

echo 内容 (与 log 类似) echo on/off (开启/关闭回显) echo off 内容 pause

echo 内容 >> test.txt 在 test 文件中写入内容

@echo off 内容 pause (暂停)

@ 符号 表示@后的命令不显示

imgimg

进入目录: cd

cd 内容 (path 路径,进入到对应文件夹下,如果不是当前盘符,需要执行 盘符: (e:)) cd.. (进入父目录) cd /d e:(cd /d 盘符名称: 进入某一个盘符)

文件夹信息:dir

dir (显示当前文件夹下的文件夹和文件名称,包含文件信息) dir /b(只显示当前文件夹下的文件夹和文件名称) dir /p (分页显示当前目录中的子文件夹与文件) dir /ad (显示当前目录中的文件) dir path (显示 path 文件夹下的文件信息)

显示文件夹目录结构:tree

tree (显示当前文件夹目录结构)

tree 路径 (显示对应文件夹里的目录结构)

创建目录: md

md 文件夹名

md 文件夹路径

删除目录: rd

rd 文件夹名/文件夹路径 rd 文件夹名 /s /q (删除当前目录中的文件夹包括子目录和子文件 /s 表示删除子文件夹与子文件 /q 表示不需要删除请求 安静模式)

拷贝: copy

copy test.txt e:\ (将 text.txt 文件拷贝到 e 盘目录下)

coyp test.txt 路径 文件名 (将文件拷贝到对应路径下,并且重命名)

copy /y test.txt e:\ (将文件拷贝到对应路径下 /y 不询问是否覆盖)

copy 文件夹名称 文件夹路径 (拷贝文件夹下的文件到目标路径(不递归子目录))

copy /y 文件夹名称 文件夹路径

更强大的拷贝: xcopy

xcopy 文件夹路径 目标文件夹路径 (拷贝文件夹下的文件到对应目录 不包含子目录)

xcopy 文件夹路径 目标文件夹路径 /s (拷贝文件夹,包含子目录)

xcopy 文件夹路径 目标文件夹路径 /d:月-日-年 /s /y(将文件夹里的某个时间改变之后的文件拷贝到目标路径)

移动文件: move

move 文件名称 文件路径

move *.txt 文件夹路径 (移动所有后缀为 txt 的文件到指定路径下 )

move 文件夹 目标文件夹

删除文件 del

del 文件夹 (删除当前目录下的文件夹中的所有文件 非只读文件)

del /f 文件夹 (删除当前目录下的文件夹中的所有文件 包括只读文件)

替换文件 replace

replace e:\work\测试.txt e:\q (使用 e:\work\测试.txt 去替换 e 盘下面 q 文件夹下的 测试.txt)

bat 批处理相关

@echo off title TestBat (窗口标题) color 2 (字体颜色) mode con cols=100 lines=20 (cols 宽 lines 高) pause

img

显示文本内容: type

在文件中搜索字符串:find

注释 rem

if goto 使用

@echo off if "%1"=="bb" goto A echo 不相等 pause :A echo 相等 pause

img

if else

@echo off if "%1"=="bb" ( echo 相等 ) else ( echo 不相等 ) pause

注意括号空格与位置

img

@echo off if exist test.bat ( echo 存在 test.bat 文件 ) else ( echo 不存在 test.bat 文件 ) pause

img

exist 文件是否存在

call 调用其他的.bat 文件 或者 .cmd 文件

@echo off echo 调用 test.bat call test.bat

img

start 启动一个程序

start "E:\Steam\Steam.exe"

choice 指定创建的选项表

@echo off choice /c ync /m "确认 Y 否 N,取消 C" if errorlevel 3 goto C if errorlevel 2 goto N if errorlevel 1 goto Y

:C echo 取消 pause

:N echo 否 pause

:Y echo 确认 pause

img

for 循环

  • cmd 窗口:for %i in (command1) do command2 (引用变量为%i)
  • bat 窗口: for %%i in (command1) do command2 (引用变量为%%i)
  • /L 控制循环次数
  • /F 输出文件

@echo off for %%i in (a b c) do echo %%i pause img

从 1 开始每次加 2 不超过 10

@echo off for /L %%i in (1 2 10) do echo %%i pause

img

@echo off for /F "delims=;" %%i in (test.bat) do echo %%i pause

delims=; 每一行已;为分割符

imgimg

其他命令合集

Windows 命令提示符(cmd.exe)是 Windows NT 下的一个用于运行 Windows 控制台程序或某些 DOS 程序的 shell 程序;或在 Windows CE 下只用于运行控制台程序的外壳程序。

dir (directory) :列出当前目录下的文件以及文件夹

md (make directory): 创建目录

rd (remove directory):删除目录

cd (change directory):进入指定目录

cd.. : 退回到上一级目录

cd\ : 退回到根目录

del:删除文件

exit:退出 dos 命令行

cls (clear screen): 清屏

有关某个命令的详细信息,请键入 HELP 命令名

ASSOC 显示或修改文件扩展名关联。

ATTRIB 显示或更改文件属性。

BREAK 设置或清除扩展式 CTRL+C 检查。

BCDEDIT 设置启动数据库中的属性以控制启动加载。

CACLS 显示或修改文件的访问控制列表(ACL)。

CALL 从另一个批处理程序调用这一个。

CD 显示当前目录的名称或将其更改。

CHCP 显示或设置活动代码页数。

CHDIR 显示当前目录的名称或将其更改。

CHKDSK 检查磁盘并显示状态报告。

CHKNTFS 显示或修改启动时间磁盘检查。

CLS 清除屏幕。

CMD 打开另一个 Windows 命令解释程序窗口。

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

COMP 比较两个或两套文件的内容。

COMPACT 显示或更改 NTFS 分区上文件的压缩。

CONVERT 将 FAT 卷转换成 NTFS。您不能转换当前驱动器。

COPY 将至少一个文件复制到另一个位置。

DATE 显示或设置日期。

DEL 删除至少一个文件。

DIR 显示一个目录中的文件和子目录。

DISKCOMP 比较两个软盘的内容。

DISKCOPY 将一个软盘的内容复制到另一个软盘。

DISKPART 显示或配置磁盘分区属性。

DOSKEY 编辑命令行、调用 Windows 命令并创建宏。

DRIVERQUERY 显示当前设备驱动程序状态和属性。

ECHO 显示消息,或将命令回显打开或关上。

ENDLOCAL 结束批文件中环境更改的本地化。

ERASE 删除一个或多个文件。

EXIT 退出 CMD.EXE 程序(命令解释程序)。

FC 比较两个文件或两个文件集并显示它们之间的不同。

FIND 在一个或多个文件中搜索一个文本字符串。

FINDSTR 在多个文件中搜索字符串。

FOR 为一套文件中的每个文件运行一个指定的命令。

FORMAT 格式化磁盘,以便跟 Windows 使用。

FSUTIL 显示或配置文件系统的属性。

FTYPE 显示或修改用在文件扩展名关联的文件类型。

GOTO 将 Windows 命令解释程序指向批处理程序中某个带标签的行。

GPRESULT 显示机器或用户的组策略信息。

GRAFTABL 启用 Windows 在图形模式显示扩展字符集。

HELP 提供 Windows 命令的帮助信息。

ICACLS 显示、修改、备份或还原文件和目录的 ACL。

IF 在批处理程序中执行有条件的处理过程。

LABEL 创建、更改或删除磁盘的卷标。

MD 创建一个目录。

MKDIR 创建一个目录。

MKLINK 创建符号链接和硬链接

MODE 配置系统设备。

MORE 逐屏显示输出。

MOVE 将一个或多个文件从一个目录移动到另一个目录。

OPENFILES 显示远程用户为了文件共享而打开的文件。

PATH 为可执行文件显示或设置搜索路径。

PAUSE 停止批处理文件的处理并显示信息。

POPD 还原由 PUSHD 保存的当前目录上一次的值。

PRINT 打印一个文本文件。

PROMPT 改变 Windows 命令提示。

PUSHD 保存当前目录,然后对其进行更改。

RD 删除目录。

RECOVER 从损坏的磁盘中恢复可读取的信息。

REM 记录批处理文件或 CONFIG.SYS 中的注释。

REN 重新命名文件。

RENAME 重新命名文件。

REPLACE 替换文件。

RMDIR 删除目录。

ROBOCOPY 复制文件和目录树的高级实用程序

SET 显示、设置或删除 Windows 环境变量。

SETLOCAL 开始用批文件改变环境的本地化。

SC 显示或配置服务(后台处理)。

SCHTASKS 安排命令和程序在一部计算机上按计划运行。

SHIFT 调整批处理文件中可替换参数的位置。

SHUTDOWN 让机器在本地或远程正确关闭。

SORT 将输入排序。

START 打开单独视窗运行指定程序或命令。

SUBST 将驱动器号与路径关联。

SYSTEMINFO 显示机器的具体的属性和配置。

TASKLIST 显示包括服务的所有当前运行的任务。

TASKKILL 终止正在运行的进程或应用程序。

TIME 显示或设置系统时间。

TITLE 设置 CMD.EXE 会话的窗口标题。

TREE 以图形显示启动器或路径的目录结构。

TYPE 显示文本文件的内容。

VER 显示 Windows 的版本。

VERIFY 告诉 Windows 验证文件是否正确写入磁盘。

VOL 显示磁盘卷标和序列号。

XCOPY 复制文件和目录树。

WMIC 在交互命令外壳里显示 WMI 信息。

Released under the MIT License.