1. Windows CMD 新手必背命令手册
作为Windows系统管理员和渗透测试人员,掌握CMD命令是基本功。以下是经过实战验证的20个高频命令及其隐藏参数用法:
1.1 文件与目录操作核心命令
- dir /a /s:显示包括隐藏文件在内的完整目录结构(/a显示所有属性,/s递归子目录)
- cd /d D:\target:跨驱动器切换目录(不加/d参数无法切换盘符)
- tree /F:以树形结构显示目录及文件内容(比单纯dir更直观)
- robocopy:微软官方推荐的替代xcopy的高级复制工具(支持断点续传/多线程)
batch复制robocopy C:\source D:\backup /MIR /ZB /R:3 /W:5 /LOG:copy.log
参数说明:/MIR镜像模式 /ZB使用重启模式 /R重试次数 /W等待时间 /LOG输出日志
1.2 系统信息与网络诊断
- systeminfo | findstr /B /C:"OS Name" /C:"OS Version":精准提取系统关键信息
- netstat -ano | findstr ESTABLISHED:实时监控活动网络连接(配合tasklist查PID)
- ping -n 10 -l 65500 192.168.1.1:定制化网络测试(-n次数 -l包大小)
- tracert -d -h 15 www.baidu.com:无DNS解析的路由追踪(-d禁用解析 -h跳数限制)
1.3 进程管理与服务控制
- tasklist /svc /fi "STATUS eq running":带服务信息的进程筛选
- sc queryex type= service state= all:获取服务详细配置(比net start全面)
- wmic process where name="chrome.exe" get processid,executablepath:WMI高级进程查询
- schtasks /query /fo LIST /v:查看计划任务详情(比图形界面更完整)
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Windows与Kali命令对照表
2.1 文件操作对比
| Windows CMD | Kali Linux | 功能说明 | 差异要点 |
|---|---|---|---|
| dir /s | ls -R | 递归列出目录 | Linux区分大小写 |
| copy /Y src dst | cp -f src dst | 强制覆盖复制 | /Y参数 vs -f参数 |
| del /S *.tmp | rm -rf *.tmp | 递归删除 | /S与-rf参数等效 |
| where python | which python | 查找可执行文件路径 | Windows需要where命令 |
| findstr "error" log.txt | grep "error" log.txt | 文本搜索 | grep支持正则表达式更强大 |
2.2 网络工具对比
| Windows CMD | Kali Linux | 典型应用场景 |
|---|---|---|
| nslookup domain | dig domain | DNS查询 |
| netstat -ano | ss -tulnp | 网络连接状态 |
| telnet host 80 | nc -zv host 80 | 端口连通性测试 |
| netsh wlan show profiles | iwlist scanning | 无线网络扫描 |
| route print | ip route show | 路由表查看 |
2.3 系统管理对比
| Windows CMD | Kali Linux | 使用技巧 |
|---|---|---|
| wmic bios get serialnumber | dmidecode -s system-serial-number | 获取硬件信息 |
| shutdown /r /t 0 | reboot | 立即重启系统 |
| certmgr.msc | openssl x509 -in cert.pem -text | 证书管理 |
| reg query "HKLM\Software" | cat /etc/apt/sources.list | 配置信息查询 |
| taskkill /IM process.exe /F | killall -9 process | 强制结束进程 |
3. 实战进阶技巧
3.1 组合命令的管道应用
- 日志分析链:
batch复制findstr /i "error" app.log | sort /+20 > errors_sorted.txt
- 进程监控循环:
batch复制for /L %i in (1,1,60) do @(tasklist | findstr "chrome" && timeout 1)
3.2 危险命令防护方案
- rm -rf防护:
batch复制:: 在Windows中创建同名文件防止误删
echo SAFE > rm
echo SAFE > rf
- 关键目录锁定:
batch复制icacls C:\Windows\System32 /deny Everyone:(DE,DC)
3.3 跨平台兼容性处理
- 换行符转换:
batch复制:: Unix转Windows格式
powershell -command "Get-Content unix_file.txt | Set-Content -Encoding utf8 win_file.txt"
- 路径转换脚本:
batch复制@echo off
set linux_path=/var/www/html
set win_path=%linux_path:/=\%
echo %win_path% >> C:\paths.txt
4. 常见问题排查指南
4.1 命令执行异常处理
| 错误现象 | 可能原因 | 解决方案 |
|---|---|---|
| 'xxx'不是内部或外部命令 | PATH环境变量缺失 | 用where检查路径或全路径执行 |
| 拒绝访问 | UAC权限不足 | 以管理员身份运行CMD |
| 参数格式不正确 | 命令版本差异 | 使用cmd /?查看帮助 |
| 输出乱码 | 字符集不匹配 | 执行chcp 65001切UTF-8编码 |
4.2 环境配置优化建议
- 永久修改环境变量:
batch复制:: 非管理员模式下的用户级配置
setx PATH "%PATH%;C:\tools\bin" /M
- CMD界面增强配置:
batch复制:: 修改注册表调整缓冲区大小
reg add HKCU\Console /v ScreenBufferSize /t REG_DWORD /d 0x23290078
- 历史命令管理:
batch复制:: 显示所有历史命令
doskey /history
:: 创建宏命令
doskey ls=dir $*
5. 自动化脚本开发模板
5.1 基础批处理框架
batch复制@echo off
:: 脚本信息头
SETLOCAL EnableDelayedExpansion
title 自动化部署工具 v1.2
color 0A
:: 参数检查
if "%1"=="" (
echo 用法: %0 [IP地址]
exit /b 1
)
:: 主逻辑流程
for /f "tokens=2 delims=:" %%i in ('ipconfig ^| findstr "IPv4"') do (
set local_ip=%%i
set local_ip=!local_ip: =!
)
echo 本机IP: !local_ip!
ping -n 3 %1
:: 错误处理
if errorlevel 1 (
echo [ERROR] 目标不可达 >> %TEMP%\network.log
exit /b 1
)
5.2 安全审计脚本示例
batch复制:: 系统安全检查工具
@echo off
set report=%USERPROFILE%\security_audit_%date:~0,4%%date:~5,2%%date:~8,2%.txt
echo === 用户账户检查 === > %report%
net user >> %report%
echo. >> %report%
echo === 开放端口检查 === >> %report%
netstat -ano | findstr LISTENING >> %report%
echo. >> %report%
echo === 补丁更新情况 === >> %report%
wmic qfe list brief >> %report%
start notepad %report%
掌握这些命令组合和对照关系后,可以显著提升在Windows环境下的运维效率,同时为学习Kali Linux打下基础。建议在日常工作中建立自己的命令速查手册,持续积累实用技巧
