windows 常见的cmd备忘录

Windows CMD 常用命令速查手册

适用:Windows 10 / 11 的 cmd.exe(部分命令在 PowerShell 也可用)。
约定:<...> 表示需替换的参数;# 之后为说明。
提示:以管理员身份运行 CMD —— Win + R → 输入 cmdCtrl + Shift + Enter


目录


1. 帮助与基础

help                       :: 列出所有内置命令
help dir                   :: 查看某条命令的帮助
dir /?                     :: 等价写法
cls                        :: 清屏
exit                       :: 关闭当前 CMD 窗口
ver                        :: 显示 Windows 版本
chcp 65001                 :: 切换控制台为 UTF-8,解决中文乱码

场景: 中文文件名显示为 ??? 或乱码 → 先执行 chcp 65001


2. 目录与文件操作

:: 切换盘符
d:

:: 切换目录
cd C:\Users\Public
cd ..                      :: 上一级
cd \                       :: 当前盘符根目录

:: 查看当前路径
cd
echo %cd%

:: 列出目录内容
dir                        :: 普通列出
dir /a                     :: 含隐藏文件
dir /s                     :: 递归子目录
dir /b                     :: 仅文件名(适合脚本)
dir *.log /b /s            :: 递归搜索所有 .log 文件

:: 新建目录
mkdir myfolder
mkdir a\b\c                :: 递归创建

:: 删除目录
rmdir myfolder             :: 仅删空目录
rmdir /s /q myfolder       :: 递归 + 静默删除

:: 文件操作
type nul > a.txt           :: 新建空文件
copy a.txt b.txt           :: 复制
xcopy src dst /E /I /Y     :: 复制目录(含子目录)
move a.txt newdir\         :: 移动 / 改名
ren old.txt new.txt        :: 重命名
del a.txt                  :: 删除文件
del /q /s *.tmp            :: 静默递归删除

场景: 清理项目里的临时文件:

del /q /s *.tmp *.bak

场景: 拷贝整个目录到 D 盘备份:

xcopy "C:\Project" "D:\Backup\Project" /E /I /Y

3. 查找与搜索

:: 在文件内容里查找字符串
findstr "TODO" *.js                 :: 在当前目录所有 js 中找
findstr /S /I "password" *.*        :: 递归 + 忽略大小写
findstr /R "^error" log.txt         :: 正则匹配以 error 开头的行
findstr /N "import" App.tsx         :: 显示行号

:: 在文件系统中查找文件
dir /s /b "C:\*.config"             :: 找所有 .config
where node                          :: 查找可执行文件路径
where /R C:\ python.exe             :: 在 C 盘递归查找

场景: 搜某段代码是在哪里被引用:

findstr /S /I /N "useEventList" *.ts *.tsx

4. 文件内容查看与编辑

type a.txt                       :: 输出文件内容
more a.txt                       :: 分页查看
notepad a.txt                    :: 用记事本打开
start a.txt                      :: 用默认程序打开
fc a.txt b.txt                   :: 比较两个文件差异
echo Hello > a.txt               :: 写入(覆盖)
echo World >> a.txt              :: 追加

5. 系统信息

systeminfo                       :: 系统全部信息(CPU/内存/补丁等)
hostname                         :: 计算机名
whoami                           :: 当前用户
whoami /priv                     :: 当前账户权限
wmic os get caption,version      :: 系统名与版本
wmic cpu get name                :: CPU 型号
wmic memorychip get capacity     :: 内存条容量
driverquery                      :: 已安装驱动列表
powercfg /batteryreport          :: 生成电池健康报告(笔记本)

场景: 远程同事让你截图系统版本:

ver
systeminfo | findstr /B /C:"OS Name" /C:"OS Version"

6. 进程与服务

:: 进程
tasklist                         :: 列出所有进程
tasklist | findstr node          :: 仅看 node 进程
tasklist /FI "IMAGENAME eq chrome.exe"

taskkill /PID 1234 /F            :: 按 PID 强制结束
taskkill /IM node.exe /F         :: 按进程名强制结束
taskkill /IM chrome.exe /T /F    :: 含子进程

:: 服务
sc query                         :: 列出全部服务
sc query state= running          :: 仅运行中的服务
sc start  <ServiceName>          :: 启动服务
sc stop   <ServiceName>          :: 停止服务
sc config <ServiceName> start= auto  :: 设置开机自启

场景: 端口被占用,找到并干掉进程:

netstat -ano | findstr :3000     :: 假设占用 3000 的 PID 是 12345
taskkill /PID 12345 /F

7. 网络相关

ipconfig                          :: 查看 IP / 网关 / DNS
ipconfig /all                     :: 详细信息(含 MAC)
ipconfig /flushdns                :: 清 DNS 缓存
ipconfig /release                 :: 释放当前 IP
ipconfig /renew                   :: 重新获取 IP

ping baidu.com                    :: 测连通性
ping -t baidu.com                 :: 持续 ping,Ctrl+C 退出
ping -n 4 baidu.com               :: 发送 4 个包

tracert baidu.com                 :: 路由跟踪
pathping baidu.com                :: 路由 + 丢包统计

nslookup baidu.com                :: DNS 解析
nslookup baidu.com 8.8.8.8        :: 指定 DNS 服务器

netstat -ano                      :: 所有连接 + PID
netstat -ano | findstr LISTENING  :: 仅监听中的端口
netstat -ano | findstr :8080      :: 查看某端口被谁占用

arp -a                            :: ARP 缓存表
route print                       :: 路由表
netsh wlan show profiles          :: 已保存的 WiFi 列表
netsh wlan show profile name="WiFi名" key=clear   :: 查看 WiFi 密码

场景: 网络打不开网页:

ipconfig /flushdns
ping 8.8.8.8                      :: 测能否到外网
ping baidu.com                    :: 测 DNS 是否正常

场景: 查看本机 WiFi 密码:

netsh wlan show profile name="MyWiFi" key=clear | findstr "关键内容"

8. 用户与权限

net user                          :: 列出本机用户
net user <username>               :: 查看某用户详情
net user <username> <password> /add     :: 新增用户
net user <username> /delete             :: 删除用户

net localgroup administrators     :: 查看管理员组成员
net localgroup administrators <username> /add     :: 加入管理员组

runas /user:Administrator cmd     :: 用管理员身份开启 CMD

9. 磁盘与分区

chkdsk C:                          :: 检查 C 盘错误
chkdsk C: /F                       :: 修复错误(重启时)
sfc /scannow                       :: 扫描并修复系统文件(管理员)
dism /Online /Cleanup-Image /RestoreHealth   :: 修复系统映像

diskpart                           :: 进入磁盘管理交互
  list disk
  select disk 1
  list partition
  exit

format D: /FS:NTFS /Q              :: 格式化(危险)

fsutil volume diskfree C:          :: 查看 C 盘剩余空间

场景: 系统异常先做一次自检:

sfc /scannow
dism /Online /Cleanup-Image /RestoreHealth

10. 环境变量

set                                :: 列出所有环境变量
set PATH                           :: 查看 PATH
set NODE_ENV=production            :: 临时设置(仅当前会话)
echo %JAVA_HOME%                   :: 查看某个变量

:: 永久设置(管理员)
setx JAVA_HOME "C:\Java\jdk17"
setx PATH "%PATH%;C:\Java\jdk17\bin" /M    :: /M 写入系统级

注意:setx 设置后新开窗口才生效;原窗口仍是旧值。


11. 计划任务

:: 创建计划任务(每天 9:00 运行)
schtasks /Create /SC DAILY /TN "MyBackup" /TR "D:\backup.bat" /ST 09:00

:: 立即运行
schtasks /Run /TN "MyBackup"

:: 查看
schtasks /Query /TN "MyBackup"

:: 删除
schtasks /Delete /TN "MyBackup" /F

12. 实用小技巧

:: 多命令串行执行
cmd1 & cmd2                        :: cmd1 执行完后执行 cmd2(无论成败)
cmd1 && cmd2                       :: cmd1 成功才执行 cmd2
cmd1 || cmd2                       :: cmd1 失败才执行 cmd2

:: 把输出重定向到文件
dir > list.txt                     :: 覆盖写
dir >> list.txt                    :: 追加写
ipconfig 2> err.txt                :: 仅错误输出
command > out.txt 2>&1             :: 标准 + 错误一起重定向

:: 管道
tasklist | findstr chrome

:: 历史命令 / 自动补全
F7                                 :: 弹出历史命令列表
Tab                                :: 路径自动补全
↑ / ↓                              :: 翻历史命令
doskey /history                    :: 列出本次会话所有命令

:: 在资源管理器中打开当前目录
start .

:: 复制输出到剪贴板
ipconfig | clip

13. 常见场景实战

13.1 端口被占用,无法启动服务

netstat -ano | findstr :3000
taskkill /PID <PID> /F

13.2 删除顽固目录(如 node_modules

rmdir /s /q node_modules

如果还报"目录不为空",可先关闭占用它的编辑器/终端,再执行。

13.3 批量重命名(把 .txt 改成 .md)

ren *.txt *.md

13.4 测试某 URL 是否能访问

curl -I https://www.baidu.com     :: Win10/11 已内置 curl

13.5 一键备份当前目录到 D 盘

xcopy "%cd%" "D:\Backup\%date:~0,10%" /E /I /Y

13.6 查看启动项

wmic startup get caption,command

13.7 找出大文件(用 PowerShell 配合)

powershell -Command "Get-ChildItem -Recurse | Sort-Object Length -Descending | Select-Object -First 10 FullName,Length"

13.8 关机 / 重启 / 注销

shutdown /s /t 0                  :: 立即关机
shutdown /r /t 0                  :: 立即重启
shutdown /l                       :: 注销
shutdown /a                       :: 取消已计划的关机
shutdown /s /t 3600 /c "1 小时后关机"

13.9 修复 Hosts 文件被劫持

notepad C:\Windows\System32\drivers\etc\hosts
ipconfig /flushdns

13.10 一行查看本机所有 IPv4 地址

ipconfig | findstr IPv4

附:CMD vs PowerShell 简易对照

CMDPowerShell说明
dirGet-ChildItem / ls列出目录
cdSet-Location / cd切换目录
delRemove-Item / rm删除
copyCopy-Item / cp复制
typeGet-Content / cat查看文件
clsClear-Host / cls清屏
tasklistGet-Process / ps进程列表
taskkillStop-Process结束进程
set$env:VAR环境变量
findstrSelect-String文本搜索

在 PowerShell 里执行 CMD 命令,可直接输入;执行 .bat 脚本同理。
反过来,CMD 里要执行 PowerShell 命令:powershell -Command "..."

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

可缺不可滥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值