Windows 常用命令大全 🪟
🚀 掌握 Windows 命令行,提升系统管理和运维效率的强大工具集
✨ 特点与优势
⚡ 高效管理 : 快速完成文件操作、系统配置和网络管理
🔧 强大功能 : 提供图形界面无法实现的深度系统控制
📊 自动化能力 : 通过批处理脚本实现重复任务自动化
🌐 网络诊断 : 内置丰富的网络测试和故障排查工具
💻 远程管理 : 支持远程系统管理和维护
📋 目录
🔰 基础命令 📂 dir - 目录列表 用途 : 显示目录中的文件和子目录功能 : 查看文件列表、过滤文件类型、排序显示
1 2 3 4 5 6 dir C:\Usersdir /s *.txt # 递归搜索所有txt文件dir /a:h # 显示隐藏文件dir /o:d # 按日期排序dir /q # 显示文件所有者dir /w # 宽列表格式显示
📍 cd / chdir - 切换目录 用途 : 更改当前目录或显示当前目录
1 2 3 4 5 6 cd C:\Windows # 切换到Windows目录cd .. # 返回上级目录cd \ # 返回根目录cd /d D:\Projects # 切换驱动器并目录pushd C:\Temp # 保存当前目录并切换popd # 返回保存的目录
📋 copy - 文件复制 用途 : 复制文件到指定位置
1 2 3 4 5 copy file.txt D:\Backup\copy *.txt D:\TextFiles\copy file1.txt + file2.txt combined.txt # 合并文件copy /y source.txt destination.txt # 覆盖不提示copy /v source.txt destination.txt # 验证复制结果
🚚 move - 文件移动/重命名 用途 : 移动文件或重命名文件/目录
1 2 3 move file.txt D:\NewLocation\move oldname.txt newname.txt # 重命名文件move /y source.txt D:\Destination\ # 强制移动
🗑️ del / erase - 删除文件 用途 : 删除一个或多个文件
1 2 3 4 5 del file.txtdel *.tmp # 删除所有tmp文件del /s /q *.log # 递归静默删除日志文件del /f read-only.txt # 强制删除只读文件del /a:h hidden.txt # 删除隐藏文件
📁 md / mkdir - 创建目录 用途 : 创建新目录
1 2 3 4 md NewFoldermd "Folder with spaces"md D:\Projects\NewProjectmd Sub1\Sub2\Sub3 # 创建多级目录
❌ rd / rmdir - 删除目录 用途 : 删除目录
1 2 3 rd OldFolderrd /s /q TempFolder # 递归静默删除目录rd .\EmptyFolder # 删除空目录
📁 文件和目录管理 🏷️ attrib - 文件属性 用途 : 显示或更改文件属性
1 2 3 4 5 attrib +r file.txt # 设置只读属性attrib +h secret.txt # 设置隐藏属性attrib -s system.txt # 移除系统属性attrib /s *.docx # 递归处理所有docx文件attrib +s +h SystemFolder # 设置系统和隐藏属性
🔄 xcopy - 高级复制 用途 : 复制文件和目录树
1 2 3 4 xcopy C:\Source D:\Backup /s /excopy *.* D:\Backup /d:01 -01 -2023 # 复制指定日期后的文件xcopy /c /h /r /y Source Dest # 持续复制,包含隐藏文件xcopy /exclude:exclude.txt Source Dest # 排除指定文件
🚀 robocopy - 强大复制工具 用途 : 可靠的文件复制工具(推荐用于大量文件复制)
1 2 3 4 5 robocopy C:\Source D:\Backup /mir # 镜像复制 robocopy /s /z /mt:16 Source Dest # 多线程复制 robocopy /log:copy .log Source Dest # 记录日志 robocopy /maxage:7 Source Dest # 复制7 天内的文件 robocopy /min:1024 Source Dest # 复制大于1 KB的文件
🌳 tree - 目录树 用途 : 图形方式显示目录结构
1 2 3 4 tree C:\Projectstree /f # 显示文件名tree /a # 使用ASCII字符tree /a /f > tree .txt # 输出到文件
✏️ ren / rename - 重命名 用途 : 重命名文件和目录
1 2 3 4 ren oldname.txt newname.txtren "old name.txt" "new name.txt"ren *.txt *.bak # 批量重命名ren *.html *.htm # 更改扩展名
🔍 where - 查找文件 用途 : 在路径中查找文件
1 2 3 where notepad.exe # 查找notepad位置 where /r C:\Windows *.exe # 递归查找 where /q python.exe && echo Python已安装 # 条件执行
⚙️ 系统管理 📊 tasklist - 进程列表 用途 : 显示当前运行的所有进程
1 2 3 4 5 tasklist tasklist /svc # 显示服务信息 tasklist /fi "IMAGENAME eq chrome.exe" # 过滤进程 tasklist /fo csv > processes.csv # 导出为CSV tasklist /v # 详细信息
⚡ taskkill - 终止进程 用途 : 终止运行的进程
1 2 3 4 taskkill /im notepad.exe # 按映像名终止taskkill /pid 1234 /f # 强制终止指定PIDtaskkill /fi "STATUS eq NOT RESPONDING" # 终止无响应进程taskkill /t /im chrome.exe # 终止进程树
🛠️ chkdsk - 磁盘检查 用途 : 检查磁盘并修复文件系统错误
1 2 3 4 chkdsk C: /f # 检查并修复C盘chkdsk /r # 定位坏扇区并恢复可读信息chkdsk /scan # 在线扫描chkdsk /spotfix # 现场修复
🔍 sfc - 系统文件检查 用途 : 扫描并修复系统文件
1 2 3 4 sfc /scannow # 立即扫描并修复 sfc /verifyonly # 只扫描不修复 sfc /scanfile=file.txt # 扫描指定文件 sfc /scanonce # 下次启动时扫描
⏻ shutdown - 关机管理 用途 : 关机、重启或注销计算机
1 2 3 4 5 6 shutdown /s /t 0 # 立即关机 shutdown /r /t 60 # 60 秒后重启 shutdown /l # 注销 shutdown /a # 取消关机 shutdown /h /f # 休眠并强制关闭应用 shutdown /m \\remote-pc /r # 重启远程计算机
ℹ️ systeminfo - 系统信息 用途 : 显示计算机的详细配置信息
1 2 3 4 systeminfo systeminfo /fo csv # CSV格式输出 systeminfo /s remote-pc # 远程计算机信息 systeminfo /u domain\user /p password # 指定凭据
📊 wmic - Windows管理工具 用途 : 强大的系统管理命令行工具
1 2 3 4 wmic computersystem get model # 获取计算机型号 wmic diskdrive get size # 获取磁盘大小 wmic process get name,processid # 获取进程信息 wmic product get name,version # 获取安装的程序
🌐 网络相关命令 🌐 ipconfig - IP配置 用途 : 显示TCP/IP网络配置值
1 2 3 4 5 6 7 ipconfig # 基本信息ipconfig /all # 详细信息ipconfig /release # 释放IP地址ipconfig /renew # 续订IP地址ipconfig /flushdns # 清除DNS缓存ipconfig /displaydns # 显示DNS缓存ipconfig /showclassid # 显示DHCP类ID
📡 ping - 网络测试 用途 : 测试网络连接
1 2 3 4 5 ping google.comping 192 .168 .1 .1 -t # 持续ping ping -n 10 example.com # 指定次数ping -l 1024 target.com # 指定数据包大小ping -f target.com # 设置不分段标志
🗺️ tracert - 路由跟踪 用途 : 跟踪数据包路径
1 2 3 4 tracert google.com tracert -d target.com # 不解析地址为主机名 tracert -h 30 target.com # 指定最大跳数 tracert -w 1000 target.com # 设置超时时间(毫秒)
📊 netstat - 网络统计 用途 : 显示网络连接和统计信息
1 2 3 4 5 6 netstat -an # 所有连接和端口 netstat -b # 显示可执行文件 netstat -s # 显示统计信息 netstat -o # 显示进程ID netstat -r # 显示路由表 netstat -e # 显示以太网统计信息
🔍 nslookup - DNS查询 用途 : 查询DNS信息
1 2 3 4 5 nslookup google.com nslookup -type =mx example.com # 查询MX记录 nslookup -debug example.com # 调试模式 nslookup -type =soa example.com # 查询SOA记录 nslookup -timeout=10 example.com # 设置超时
👥 net - 网络命令集 用途 : 多种网络管理功能
1 2 3 4 5 6 7 net user # 显示用户账户net share # 显示共享资源net start # 显示运行服务net stop service-name # 停止服务net use # 显示网络连接net view # 显示网络资源net config # 显示配置信息
🌐 netsh - 网络配置 用途 : 网络配置命令行工具
1 2 3 4 netsh interface show config # 显示接口配置 netsh firewall show config # 显示防火墙配置 netsh wlan show profiles # 显示WiFi配置 netsh advfirewall dump # 导出防火墙配置
💾 磁盘管理 🎛️ diskpart - 磁盘分区 用途 : 磁盘分区管理工具
1 2 3 4 5 6 7 diskpart # 进入交互模式 list disk # 列出磁盘 select disk 0 # 选择磁盘 list partition # 列出分区 create partition primary # 创建主分区 format fs =ntfs quick # 快速格式化为NTFSclean # 清除磁盘
用途 : 格式化磁盘
1 2 3 4 format D: /fs :ntfs # 格式化为NTFSformat /q # 快速格式化format /v:MyDrive # 设置卷标format /a:64 k # 设置分配单元大小
📀 diskcopy - 磁盘复制 用途 : 复制整个磁盘内容
1 diskcopy A: B: # 复制A盘到B盘
🏷️ vol - 卷标显示 用途 : 显示磁盘卷标和序列号
✏️ label - 卷标管理 用途 : 创建、更改或删除磁盘卷标
1 2 label C: SystemDrivelabel D: DataDrive
📈 defrag - 磁盘碎片整理 用途 : 整理磁盘碎片
1 2 3 defrag C: /a # 分析碎片 defrag C: /o # 优化 defrag C: /v # 显示详细报告
👥 用户管理 👤 net user - 用户账户管理 用途 : 添加、删除或更改用户账户
1 2 3 4 5 net user # 显示所有用户net user john Password123 /add # 添加用户net user john /delete # 删除用户net user john /active:no # 禁用用户net user john /logonpasswordchg:yes # 允许更改密码
👥 net localgroup - 本地组管理 用途 : 添加、显示或修改本地组
1 2 3 4 net localgroup # 显示所有本地组net localgroup administrators john /add # 添加用户到管理员组net localgroup users john /delete # 从用户组删除net localgroup "Power Users" /add # 添加到特权用户组
🔄 runas - 以其他用户身份运行 用途 : 以其他用户身份运行程序
1 2 3 runas /user:administrator cmd .exe runas /savecred /user:admin notepad.exe # 保存凭据 runas /profile /user:domain\user program.exe # 加载用户配置文件
🔐 cacls / icacls - 权限管理 用途 : 显示或修改文件访问控制列表
1 2 3 4 icacls file.txt /grant User:(F) # 授予完全控制 icacls folder /inheritance:r # 禁用继承 icacls file.txt /remove User # 移除用户权限 cacls file.txt /e /g User:R # 编辑权限,授予读取权限
🔧 其他实用命令 📢 echo - 消息显示 用途 : 显示消息或控制命令回显
1 2 3 4 5 6 echo Hello World!echo %PATH% # 显示环境变量echo off # 关闭命令回显echo on # 开启命令回显echo . # 输出空行echo %DATE% %TIME% # 显示日期时间
📄 type - 文件内容显示 用途 : 显示文件内容
1 2 3 4 type file.txttype *.log # 显示多个文件内容type nul > newfile.txt # 创建空文件type con > file.txt # 从控制台输入创建文件
🔍 find - 文本搜索 用途 : 在文件中搜索文本
1 2 3 4 5 find "error" log.txtfind /i "warning" *.log # 不区分大小写find /c "success" file.txt # 统计出现次数find /v "test" file.txt # 显示不包含文本的行findstr /n "pattern" file.txt # 显示行号
🔄 sort - 文本排序 用途 : 排序输入文本
1 2 3 4 sort file.txtsort /r file.txt # 反向排序sort /+n file.txt # 从第n列开始排序sort /unique file.txt # 去除重复行
⚖️ fc - 文件比较 用途 : 比较两个文件差异
1 2 3 4 fc file1.txt file2.txt fc /b file1.bin file2.bin # 二进制比较 fc /n file1.txt file2.txt # 显示行号 fc /l file1.txt file2.txt # ASCII模式比较
🧹 cls - 清屏 用途 : 清除命令行窗口
💬 prompt - 提示符定制 用途 : 自定义命令提示符
1 2 3 4 prompt $p$g # 显示路径和> prompt $t$g # 显示时间和> prompt $u@$h$g # 显示用户@主机> prompt $+$g # 显示推送目录深度
📝 set - 环境变量 用途 : 显示、设置或删除环境变量
1 2 3 4 5 set # 显示所有变量set PATH =%PATH% ;C:\NewPath # 添加路径set MYVAR=value # 设置变量set /a result=10 +5 # 数学计算set /p input=请输入: # 用户输入
📜 批处理脚本 🎯 批处理基础 1 2 3 4 @echo off echo 脚本开始执行pause
⚙️ 常用批处理命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 @echo off # 关闭回显 title 我的脚本 # 设置窗口标题color 0 a # 设置颜色(背景0 ,文字a)set /p name=请输入姓名: # 用户输入echo 你好, %name% !if exist file.txt ( echo 文件存在 ) else ( echo 文件不存在 ) for %%i in (*.txt) do echo %%i # 循环处理goto :label # 跳转到标签:label exit /b 0 # 退出脚本
🚀 实用批处理示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 @echo off chcp 65001 >nul # 设置UTF-8 编码echo 🚀 系统优化脚本echo .echo 📁 清理临时文件...del /q /f %temp% \*.* 2 >nul rd /s /q %temp% 2 >nul echo 📊 系统信息:systeminfo | findstr /C:"OS 名称" /C:"物理内存" echo 📦 备份文件...xcopy "C:\Important" "D:\Backup\Important" /s /e /yecho .echo ✅ 脚本执行完成!timeout /t 5 exit
🔄 高级批处理技巧 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 @echo off setlocal enabledelayedexpansionif errorlevel 1 ( echo 错误发生! exit /b 1 ) set array[0 ]=第一个元素set array[1 ]=第二个元素for /l %%i in (0 ,1 ,1 ) do ( echo !array[%%i]! ) call :my_function "参数"goto :eof:my_function echo 函数收到参数: %~1 exit /b 0
💡 使用技巧 🎨 美化命令行 1 2 3 4 5 6 7 8 9 10 11 12 # 使用颜色 color 0 a # 黑底绿字color 1 f # 蓝底白字# 设置窗口大小 mode con : cols=100 lines=40 # 自定义提示符 prompt [$t]$p$g # 使用特殊字符 echo ░▒▓█ 进度条 █▓▒░
🔧 快捷键技巧
F7
- 查看命令历史
F8
- 搜索历史命令
Tab
- 自动补全路径
↑/↓
- 浏览命令历史
Ctrl + C
- 终止当前命令
Ctrl + A
- 移动到行首
Ctrl + E
- 移动到行尾
Ctrl + ←/→
- 按单词移动
📚 学习资源
帮助系统 : 在任何命令后加 /?
查看帮助
命令参考 : 使用 help
命令查看所有可用命令
在线文档 : 访问 Microsoft 官方文档获取详细信息
🚀 高级功能 🔄 PowerShell 集成 用途 : 在CMD中使用PowerShell命令
1 2 powershell "Get-Process | Sort -Object CPU -Descending | Select-Object -First 5 " powershell "Get-Service | Where-Object {$_.Status -eq 'Running'}"
📊 性能监控 用途 : 系统性能监控命令
1 2 3 typeperf "\Processor(_Total)\% Processor Time " -sc 10 # 监控CPU使用率 perfmon # 打开性能监视器 logman create counter MyLog -c "\Memory\Available MBytes" # 创建性能计数器
🔧 注册表操作 用途 : 命令行注册表编辑
1 2 3 reg query "HKLM\Software\Microsoft\Windows\CurrentVersion" # 查询注册表 reg add "HKCU\Software\MyApp" /v Setting /t REG_SZ /d Value # 添加注册表项 reg export "HKCU\Software\MyApp" backup.reg # 导出注册表
🌐 远程管理 用途 : 远程系统管理命令
1 2 3 psexec \\remote-pc cmd .exe # 远程执行命令 sc \\remote-pc queryex state= all # 查询远程服务 wmic /node:"remote-pc" process get name # 远程进程管理
💡 专业提示 :
使用 > nul 2>&1
重定向输出和错误信息
在批处理脚本中使用 setlocal enabledelayedexpansion
处理变量
使用 %ERRORLEVEL%
检查上一条命令的执行结果
对于复杂任务,考虑使用 PowerShell 脚本替代批处理
🛡️ 安全警告 :
谨慎使用系统级命令,特别是在生产环境中
在执行破坏性操作前始终进行备份
使用最小权限原则运行命令