Windows系统

Windows CMD 命令大全

1. 文件和目录操作命令

基本目录操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
dir                  # 显示当前目录内容
dir /a # 显示所有文件(包括隐藏文件)
dir /p # 分页显示
dir /w # 宽列表格式显示
dir *.txt # 只显示txt文件
dir /s # 显示子目录内容
dir /o:n # 按名称排序
dir /o:-d # 按日期逆序排序

cd # 显示当前目录
cd \ # 转到根目录
cd .. # 转到上级目录
cd folder # 进入folder目录
cd /d D:\test # 切换到D盘test目录

md folder # 创建目录
rd folder # 删除空目录
rd /s folder # 删除目录及内容
rd /s /q folder # 安静模式删除(不确认)

文件操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
type file.txt        # 显示文件内容
more file.txt # 分页显示文件内容
copy file1.txt file2.txt # 复制文件
copy *.txt D:\backup\ # 复制所有txt文件
xcopy source dest /s /e # 复制目录和子目录
robocopy source dest /e # 更强大的复制命令

ren old.txt new.txt # 重命名文件
move file.txt D:\ # 移动文件

del file.txt # 删除文件
del *.tmp # 删除所有tmp文件
del /f readOnly.txt # 强制删除只读文件
del /s *.bak # 删除当前及子目录中的bak文件

attrib file.txt # 显示文件属性
attrib +r file.txt # 设置只读属性
attrib -h file.txt # 取消隐藏属性
attrib +s +h file.txt # 设置系统和隐藏属性

2. 系统信息命令

系统信息

1
2
3
4
5
6
7
8
9
10
11
systeminfo           # 显示详细系统信息
hostname # 显示计算机名
ver # 显示Windows版本
winver # 显示Windows版本对话框

date # 显示或设置日期
time # 显示或设置时间

wmic computersystem get model # 获取计算机型号
wmic memorychip get capacity # 查看内存大小
wmic diskdrive get size # 查看硬盘大小

网络信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
ipconfig             # 显示IP配置
ipconfig /all # 显示详细网络信息
ipconfig /release # 释放IP地址
ipconfig /renew # 续订IP地址
ipconfig /flushdns # 清除DNS缓存

netstat # 显示网络连接
netstat -an # 显示所有连接和端口
netstat -r # 显示路由表
netstat -b # 显示每个程序使用的端口

ping google.com # ping测试
ping -t 192.168.1.1 # 持续ping
tracert google.com # 跟踪路由路径

3. 进程和服务管理

进程管理

1
2
3
4
5
6
7
8
9
10
11
tasklist             # 显示所有进程
tasklist /svc # 显示进程和服务
tasklist /fi "imagename eq chrome.exe" # 过滤进程

taskkill /im notepad.exe # 结束进程
taskkill /pid 1234 /f # 强制结束指定PID进程
taskkill /f /im chrome.exe # 强制结束Chrome

start notepad # 启动记事本
start www.google.com # 打开网页
start "" "C:\program files\app\app.exe" # 启动应用程序

服务管理

1
2
3
4
5
6
7
8
9
sc query             # 显示所有服务
sc queryex type= service state= all # 详细服务信息
sc start ServiceName # 启动服务
sc stop ServiceName # 停止服务
sc config ServiceName start= auto # 设置服务自动启动

net start # 显示运行的服务
net start "Service Name" # 启动服务
net stop "Service Name" # 停止服务

4. 磁盘管理命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
chkdsk C:            # 检查磁盘
chkdsk C: /f # 检查并修复磁盘
chkdsk C: /r # 定位坏扇区并恢复可读信息

format D: # 格式化D盘
format D: /fs:ntfs # 格式化为NTFS

diskpart # 进入磁盘分区工具
clean # 在diskpart中清除磁盘
list disk # 在diskpart中列出磁盘

defrag C: # 磁盘碎片整理
defrag C: /a # 分析碎片情况

fsutil fsinfo drives # 显示所有驱动器
fsutil volume diskfree C: # 查看磁盘空间

5. 用户和权限管理

1
2
3
4
5
6
7
8
9
10
whoami               # 显示当前用户名
whoami /priv # 显示当前用户权限
net user # 显示所有用户
net user username # 显示用户信息
net user username password /add # 创建用户
net user username /delete # 删除用户

net localgroup administrators username /add # 添加到管理员组

runas /user:administrator cmd # 以管理员身份运行CMD

6. 批处理脚本命令

基本批处理命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
echo Hello World      # 输出文本
echo off # 关闭命令回显
@echo off # 关闭回显(包括本行)

set var=value # 设置变量
echo %var% # 使用变量
set /p var=请输入: # 接收用户输入

pause # 暂停等待按键
timeout /t 5 # 等待5
choice /c YN /m "确认吗" # 选择提示

goto label # 跳转到标签
:label # 定义标签

call script.bat # 调用另一个批处理
exit # 退出CMD
exit /b 0 # 退出批处理并返回错误码

条件判断和循环

1
2
3
4
5
6
7
8
9
10
11
12
13
14
if exist file.txt echo 文件存在
if not exist file.txt echo 文件不存在
if %errorlevel% == 0 echo 成功
if %var% == value echo 匹配

if %var% == value (
echo 条件成立
) else (
echo 条件不成立
)

for %%i in (*.txt) do echo %%i # 遍历txt文件
for /f "tokens=*" %%i in (file.txt) do echo %%i # 读取文件内容
for /l %%i in (1,1,10) do echo %%i # 数字循环

7. 实用工具命令

查找和搜索

1
2
3
4
5
6
7
8
find "text" file.txt          # 在文件中查找文本
findstr "text" *.txt # 在多个文件中查找
findstr /s "text" *.* # 在子目录中递归查找
findstr /i "text" file.txt # 忽略大小写
findstr /r "^[0-9]" file.txt # 使用正则表达式

where notepad # 查找程序位置
where *.txt # 查找文件

其他实用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
cls                          # 清屏
color 0A # 设置颜色(背景0,前景A)
title 新标题 # 设置窗口标题

prompt $p$g # 设置提示符
prompt 时间:$t$_$p$g # 自定义提示符

tree # 显示目录树
tree /f # 显示目录树和文件

assoc .txt # 查看文件类型关联
ftype txtfile # 查看文件类型命令

driverquery # 显示已安装驱动
systeminfo | findstr /B /C:"OS Name" /C:"OS Version" # 过滤系统信息

8. 网络相关命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
net use                      # 显示网络连接
net use Z: \\server\share # 映射网络驱动器
net use Z: /delete # 删除网络驱动器

net view # 显示网络计算机
net view \\computer # 查看共享资源

netsh wlan show profiles # 显示WiFi配置
netsh wlan show interfaces # 显示无线网卡信息
netsh interface show interface # 显示网络接口

arp -a # 显示ARP表
route print # 显示路由表
nslookup google.com # DNS查询

9. 注册表操作

1
2
3
4
5
reg query "HKLM\Software"    # 查询注册表
reg add "HKLM\Software\Test" /v ValueName /t REG_SZ /d Data # 添加注册表项
reg delete "HKLM\Software\Test" /v ValueName /f # 删除注册表项
reg export "HKLM\Software\Test" backup.reg # 导出注册表
reg import backup.reg # 导入注册表

10. 计划任务管理

1
2
3
4
schtasks                     # 显示计划任务
schtasks /create /tn "任务名" /tr "程序路径" /sc daily /st 09:00 # 创建任务
schtasks /run /tn "任务名" # 立即运行任务
schtasks /delete /tn "任务名" /f # 删除任务

11. 环境变量管理

1
2
3
4
5
6
7
set                         # 显示所有环境变量
set PATH # 显示PATH变量
set JAVA_HOME=C:\Java # 设置环境变量
setx JAVA_HOME "C:\Java" # 永久设置环境变量

path # 显示PATH
path %PATH%;C:\newpath # 临时添加PATH

12. 实用技巧和组合命令

命令组合

1
2
3
4
5
6
7
8
9
10
11
命令1 & 命令2               # 顺序执行多个命令
命令1 && 命令2 # 前一个成功才执行后一个
命令1 || 命令2 # 前一个失败才执行后一个

命令 > file.txt # 输出重定向到文件
命令 >> file.txt # 输出追加到文件
命令 2> error.log # 错误输出重定向
命令 > output.log 2>&1 # 所有输出重定向

命令 | find "text" # 管道过滤
dir | sort # 管道排序

实用示例

1
2
3
4
5
6
7
8
9
10
11
# 备份文件
xcopy C:\source D:\backup /s /e /h /y

# 查找大文件
forfiles /s /m *.* /c "cmd /c if @fsize gtr 10000000 echo @path @fsize"

# 监控文件变化
powershell "Get-ChildItem | Where-Object {$_.LastWriteTime -gt (Get-Date).AddMinutes(-5)}"

# 批量重命名
for /r %%i in (*.jpeg) do ren "%%i" "%%~ni.jpg"

13. 帮助系统

1
2
3
4
5
6
7
8
help                        # 显示基本命令帮助
命令 /? # 显示具体命令帮助
wmic /? # 显示WMIC帮助

# 获取详细帮助
net help
sc /?
reg /?