Windows 下的命令提示符(cmd.exe,常被称作 DOS 命令提示符)提供了许多强大的命令用于文件管理、系统诊断、网络配置等。以下是使用频率较高的常用命令及其简要说明和示例:
一、目录和文件操作 (最常用)
-
cd或chdir(更改目录)- 用途: 切换当前工作目录。
- 示例:
cd Documents- 进入当前目录下的Documents子目录。cd ..- 返回到上一级目录(注意:cd..没有空格 也是有效的,但cd ..是标准写法)。cd \- 返回到当前驱动器的根目录(如C:\>)。cd D:\Projects- 切换到D:盘的Projects目录(如果当前在C:盘,这会切换到D:盘并进入该目录)。cd /d D:\Projects- 如果当前在C:盘,这个命令强制切换到D:盘的Projects目录(/d开关用于切换驱动器)。cd %userprofile%- 切换到当前用户的主目录(通常是C:\Users\<你的用户名>)。
-
dir(列出目录内容)- 用途: 显示当前目录或指定目录中的文件和子目录列表。
- 常用参数:
/p:分屏显示,按任意键继续。/w:宽格式显示,文件名横向排列。/a:显示指定属性的文件(如/ah显示隐藏文件,/ad只显示目录)。/s:显示包含所有子目录中的内容。/b:只显示文件名(简洁列表)。/o:排序(如/on按名称排序,/os按大小从小到大,/oe按扩展名)。/t:指定时间类型(如ta访问时间,tw写入时间等)。
- 示例:
dir- 显示当前目录内容。dir /p /on- 分屏显示并按名称排序。dir *.txt /s- 在当前目录及其所有子目录中查找所有.txt文件。dir "C:\Program Files" /ad- 列出C:\Program Files目录下的所有子目录(不包括文件)。dir /b > filelist.txt- 将当前目录的简洁文件列表输出到filelist.txt文件中。
-
md或mkdir(创建目录)- 用途: 创建一个新目录。
- 示例:
mkdir NewFolder- 在当前目录创建名为NewFolder的文件夹。mkdir C:\Data\Reports- 在C:\Data下创建Reports目录(如果Data目录不存在,此命令会失败)。mkdir Reports\2023\Q1- 在当前目录下创建多级目录Reports\2023\Q1(会逐级创建不存在的父目录)。
-
rd或rmdir(删除目录)- 用途: 删除一个空目录。
- 常用参数:
/s:删除指定目录及其所有子目录和文件(非常危险!)需要确认。/q:安静模式,与/s一起使用时不需要确认(极其危险!慎用!)。
- 示例:
rmdir EmptyFolder- 删除名为EmptyFolder的空文件夹。rmdir /s OldProjects- 删除OldProjects文件夹及其所有内容,删除前会要求确认。rmdir /s /q TempData- 安静地、无需确认地删除TempData文件夹及其所有内容(高危操作!确保你知道在删什么!)。
-
copy(复制文件)- 用途: 将一个或多个文件复制到另一个位置。
- 常用参数:
/y:覆盖目标文件而不提示确认。/v:校验写入后的文件是否正确。
- 示例:
copy report.txt reports_backup\- 将report.txt复制到reports_backup目录下(保留原文件名)。copy report.txt final_report.txt- 将report.txt复制并重命名为final_report.txt。copy *.docx D:\Backup\- 将当前目录所有.docx文件复制到D:\Backup目录。copy file1.txt + file2.txt combined.txt- 将file1.txt和file2.txt的内容合并后写入combined.txt。
-
xcopy(扩展复制)- 用途: 复制文件和目录树(比
copy更强大)。 - 常用参数:
/s:复制目录及其子目录(不包括空目录)。/e:复制目录及其子目录(包括空目录)。/i:如果目标不存在且要复制多个文件,则将目标视为目录。/y:覆盖现有文件而不提示。/c:即使发生错误也继续复制。/h:复制隐藏文件和系统文件。/d:MM-DD-YYYY:仅复制在指定日期或之后修改的文件。
- 示例:
xcopy C:\Data D:\Backup /e /i- 将C:\Data目录(包括所有子目录、空目录)复制到D:\Backup目录。如果D:\Backup不存在,会自动将其视为目录创建。xcopy *.png Images /s /y- 将当前目录及其所有子目录中的.png文件复制到Images目录,如果目标文件已存在则直接覆盖。
- 用途: 复制文件和目录树(比
-
move(移动文件/重命名)- 用途: 将一个或多个文件移动到另一个目录,或重命名文件/目录。
- 示例:
move report.txt Archived\- 将report.txt移动到Archived子目录。move report.txt summary.txt- 将report.txt重命名为summary.txt(如果在同一目录下)。move "Old Folder" "New Folder"- 将目录Old Folder重命名为New Folder。
-
del或erase(删除文件)- 用途: 删除一个或多个文件。
- 常用参数:
/p:删除每个文件前要求确认。/f:强制删除只读文件。/s:删除所有子目录中的指定文件。/q:安静模式,删除时不要求确认(高危!)。/a:根据属性选择文件删除(如/a:h删除隐藏文件)。
- 示例:
del temp.tmp- 删除temp.tmp文件。del *.bak /p- 删除当前目录所有.bak文件,删除每个文件前要求确认。del /s /q C:\Temp\*.log- 安静地递归删除C:\Temp及其所有子目录中的所有.log文件(高危操作!确保你知道在删什么!)。
二、网络相关
-
ipconfig(IP 配置)- 用途: 显示当前所有网络适配器的 TCP/IP 配置信息(如 IP 地址、子网掩码、默认网关、DNS 等)。
- 常用参数:
/all:显示详细的配置信息(包括物理地址/MAC地址、DHCP状态等)。/release:释放指定适配器的 IPv4 地址(DHCP)。/release6:释放指定适配器的 IPv6 地址(DHCP)。/renew:更新指定适配器的 IPv4 地址(DHCP)。/renew6:更新指定适配器的 IPv6 地址(DHCP)。/flushdns:清除本地 DNS 解析器缓存(解决 DNS 问题时常用)。/displaydns:显示本地 DNS 解析器缓存的内容。
- 示例:
ipconfig- 显示基本信息。ipconfig /all- 显示所有网络适配器的详细信息(最常用,用于查看网络配置详情。关键信息:IPv4地址、默认网关、DHCP服务器、DNS服务器)。ipconfig /release- 释放当前适配器的 IPv4 地址。ipconfig /renew- 尝试重新获取 IPv4 地址。ipconfig /flushdns- 强力推荐 当访问域名出现问题时尝试运行(常见且重要操作)。
-
ping(网络连通性测试)- 用途: 发送 ICMP 回显请求报文到目标主机或 IP 地址,测试网络连接是否通畅以及延迟。
- 常用参数:
-t:持续发送 Ping,直到手动中断(Ctrl+C)。用于连续监测。-n <次数>:指定发送的次数(默认为 4 次)。-l <大小>:指定发送缓冲区的大小(字节)。ping -l 1500 www.example.com(测试大包是否通)。-f:设置“不分段”标志(用于路径 MTU 发现)。-i <TTL>:设置生存时间值。-w <超时>:设置每次回复的等待超时(毫秒)。
- 示例:
ping www.baidu.com- Ping 百度域名(测试能否访问互联网)。ping 192.168.1.1- Ping 局域网网关。ping -t 192.168.1.100- 持续 Ping 目标主机,用于监控。ping -n 10 -w 5000 google.com- Ping 10次,每次等待5秒。
-
tracert或traceroute(路由跟踪)- 用途: 确定数据包到达目标主机所经过的路径(每一跳的路由器)。显示路径上每个节点的 IP 地址和主机名(如果有)以及延迟时间。用于诊断网络瓶颈在哪里。
- 常用参数:
-d:不将 IP 地址解析为主机名(加快显示速度)。-h <最大跳数>:设置搜索目标的最大跳数(默认为 30)。-w <超时>:设置每次回复的等待超时(毫秒)。
- 示例:
tracert www.qq.com- 跟踪到腾讯服务器网站的路径。tracert -d -h 20 8.8.8.8- 不解析主机名,最多跟踪20跳,目标是Google DNS。
-
netstat(网络状态统计)- 用途: 显示活动的 TCP 连接、侦听的端口、以太网统计信息、IP 路由表、IPv4/IPv6 统计信息等。
- 常用参数:
-a:显示所有连接和侦听端口(非常重要!查看所有网络活动连接)。-b:显示创建连接或侦听端口所涉及的可执行程序(需要管理员权限)。-n:以数字形式显示地址和端口号(不解析域名和服务名)。-o:显示每个连接关联的进程 ID(极其有用!查看哪个程序占用了端口)。-p <协议>:显示指定协议的连接(如tcp,udp,icmp)。-r:显示路由表(类似于route print)。-s:显示每个协议的统计信息。-e:显示以太网统计信息。-t:按当前时间刷新显示(netstat -a -n -o结合findstr :80)。
- 示例:
netstat -ano- 最常用组合: 以数字形式显示所有连接和端口号,并显示对应的进程 ID(PID)。tasklist | findstr <PID>可查进程名。netstat -ano | findstr :8080- 找出谁在监听或使用 TCP/UDP 8080 端口(-a参数很重要)。netstat -b- 管理员运行! 查看连接背后的程序(定位恶意软件常用)。netstat -s -p tcp- 显示 TCP 协议的统计数据(错误、重传等)。
-
nslookup(名称服务器查询)- 用途: 查询 DNS 服务器以获取特定域名的 IP 地址(正向解析)或根据 IP 地址获取主机名(反向解析),诊断 DNS 问题。
- 使用方法:
- 直接模式:
nslookup然后输入域名或 IP,回车执行。 - 非交互模式:
nslookup <域名>或nslookup <域名> <DNS服务器IP>。
- 直接模式:
- 示例:
nslookup www.microsoft.com- 查询www.microsoft.com的 IP 地址。nslookup 142.250.179.78- 反向查找 IP142.250.179.78对应的主机名(如果配置了 PTR 记录)。nslookup www.twitter.com 8.8.8.8- 向 Google DNS (8.8.8.8) 查询www.twitter.com的地址。
三、系统和磁盘管理
-
systeminfo(系统信息)- 用途: 显示详细的操作系统配置信息,包括主机名、操作系统版本、安装日期、启动时间、硬件信息(BIOS 版本、处理器、内存)等。
- 示例:
systeminfo- 显示本地计算机的信息。systeminfo /s <远程计算机名> /u <用户名> /p <密码>- 获取网络中另一台计算机的信息。
-
tasklist(任务列表)- 用途: 显示当前运行在本地或远程计算机上的进程列表。类似于任务管理器中的进程列表。
- 常用参数:
/v:显示详细信息(包括窗口标题等)。/svc:显示每个进程的服务信息。/fi "<过滤器>":根据条件过滤进程(如tasklist /fi "imagename eq notepad.exe"只显示记事本进程)。/m:显示加载的 DLL 模块列表(如tasklist /m <dll名>)。
- 示例:
tasklist- 显示基本进程列表。tasklist /fi "status eq running" /fi "username eq nt authority\system"- 显示所有由 SYSTEM 用户运行的进程。tasklist /svc- 显示进程和它们承载的服务(查找木马常用)。tasklist /v | find /i "chrome"- 查找所有包含"chrome"字符串的详细进程信息(不区分大小写)。tasklist /fi "pid eq 1234"- 显示 PID 为 1234 的进程信息。
-
taskkill(终止任务)- 用途: 终止一个或多个正在运行的进程(需要权限)。
- 常用参数:
/pid <进程ID>:按进程 ID 终止。/im <映像名称>:按映像名称(文件名)终止(如notepad.exe)。/f:强制终止进程(对于无响应的程序)。/t:终止进程及其启动的所有子进程。
- 示例:
taskkill /f /im notepad.exe- 强制结束所有记事本进程。taskkill /pid 5678 /t /f- 强制结束 PID 为 5678 的进程及其所有子进程。tasklist | findstr "badprogram"然后再taskkill /im badprogram.exe /f- 先找到坏程序的名字,再终止它。
-
shutdown(关机/重启)- 用途: 关闭或重新启动本地或远程计算机。
- 常用参数:
/s:关闭计算机。/r:关闭并重新启动计算机。/g:完全关机并重启。重启后,重新注册任何之前注册的应用程序。/h:休眠本地计算机。/l:注销当前用户。/t <秒>:设置关闭前的超时时间(秒)。默认为 30 秒。使用 0 表示立即关闭/重启(如shutdown /s /t 0)。/a:中止系统关闭(在/t xx设定的超时时间内有效)。/c "<注释>":添加关机的注释消息(最多 512 个字符)。/f:强制关闭正在运行的应用程序而不事先警告用户。/m \\<计算机名>:指定目标远程计算机。
- 示例:
shutdown /s /t 60- 一分钟后关闭计算机。shutdown /r /f /t 0- 强制立即重启计算机。shutdown /l- 注销当前用户。shutdown /h- 休眠计算机。shutdown /s /m \\SERVER01 /f /c "紧急维护!" /t 120- 强制在两分钟后关闭远程服务器SERVER01,并显示消息"紧急维护!"。
-
chkdsk(检查磁盘)- 用途: 检查磁盘的错误和坏扇区并修复它们(通常需要管理员权限并在未使用分区时运行,或在启动时自动运行)。
- 常用参数:
/f:修复磁盘上的错误(如果磁盘在使用中,可能需要重启后检查)。/r:查找坏扇区并恢复可读信息(比/f更彻底,也隐含/f,时间更长)。/x:如果必要,强制卸载卷(也隐含/f)。
- 示例:
chkdsk C:- 检查C:盘的状态(只读)。chkdsk D: /f- 检查D:盘并修复错误(如果D:盘有文件在使用,会提示需要在下次重启时安排检查)。chkdsk /f /r- 修复当前驱动器错误并查找恢复坏扇区(最彻底的检查)。
四、文本处理和辅助命令
-
type(显示文本文件内容)- 用途: 在命令提示符窗口中显示文本文件的内容(内容太长会快速滚动,适合小文件)。
- 示例:
type notes.txt- 显示notes.txt文件内容。type notes.txt | more- 分页显示notes.txt文件内容(按空格翻页)。
-
find或findstr(查找字符串)-
find: 在文件或输出流中查找字符串(区分大小写)。- 示例:
dir | find "2023"- 在dir的输出结果中查找包含"2023"的行。find "ERROR" logfile.txt- 在logfile.txt中查找包含"ERROR"的行。
- 示例:
-
findstr: 比find更强大,支持正则表达式(不区分大小写是默认行为,除非加/i)。- 常用参数:
/i:不区分大小写。/s:在当前目录及其所有子目录的文件中搜索。/m:只打印匹配的文件名。/n:打印匹配行的行号。/c:"<字面字符串>":查找包含完整文本(包含空格)的字符串(精确匹配)。/r:将搜索字符串视为正则表达式。/b:匹配行首。/e:匹配行尾。
- 示例:
findstr /s /i "critical error" *.log- 查找所有子目录中所有.log文件中包含critical error(不区分大小写)的行。findstr /m /c:"Hello World" *.txt- 打印所有包含"Hello World"(精确匹配)的.txt文件的文件名。netstat -ano | findstr :443- 查找所有包含:443(标准 HTTPS 端口)的连接或侦听信息。findstr /i /n "pattern" filename.txt- 在文件中查找并显示行号,不区分大小写。
- 常用参数:
-
-
cls(清屏)- 用途: 清除命令提示符窗口的所有显示内容。
- 示例:
cls
-
exit(退出)- 用途: 退出当前命令提示符会话窗口。
- 示例:
exit
重要提示
- 大小写: 大多数命令和参数不区分大小写,但文件/目录名本身可能区分(取决于文件系统,NTFS 通常不区分)。
- 空格: 参数和值之间通常需要空格(比如
dir /w),但在某些情况下(如cd..)没有空格是允许的(但cd ..是标准写法)。 - 引号: 如果文件或目录名包含空格,请用双引号将其括起(如
cd "My Documents",copy "file with spaces.txt" backup\)。 - 通配符:
*(匹配任意字符的任意长度) 和?(匹配任意单个字符) 在文件名操作中非常有用(如dir *.jpg,del temp??.bak)。 - 管道
|: 允许将一个命令的输出作为另一个命令的输入(如dir | more,tasklist | findstr "chrome")。 - 重定向:
>将命令输出覆盖到文件;>>将命令输出追加到文件;<将文件内容作为命令输入(如dir > filelist.txt,echo New line >> file.txt)。 - 管理员权限: 很多系统管理命令需要“以管理员身份运行” 命令提示符才能执行。
- 命令帮助: 在命令后加
/?可以查看该命令的详细帮助信息(如ping /?,netstat /?)。📖
总结建议
- 新手建议从
cd,dir,copy,del,ipconfig /all,ping,cls开始熟悉。 - 管理文件目录:
mkdir,rmdir,xcopy,move。 - 诊断网络:
ipconfig /all+ipconfig /flushdns,ping,tracert,netstat -ano,nslookup。 - 管理系统和进程:
tasklist,taskkill,shutdown,systeminfo,chkdsk(谨慎使用)。 - 查找文本:
findstr(极其强大!)。 - **
/?是终极好朋友!** 遇到陌生命令或参数时一定要用。
这些命令构成了在 Windows 命令行环境下进行高效操作的基础。对于更高级的任务,学习 PowerShell 会是更好的选择,它提供了比传统 cmd 命令更强大、更面向对象的脚本功能。
6088

被折叠的 条评论
为什么被折叠?



