工作常用命令
# 工作中常用 CMD 命令
前言
以下内容汇总了在日常工作和运维场景中经常用到的命令及常见组合方式,帮助大家快速定位与解决实际问题。
# 1. 网络排障与端口检查
# 1.1 检测网络连通性
ping <目标IP或域名>
- 用途:测试本机到目标地址的网络状况,最基础的排障手段
- 示例:
ping 192.168.1.10 -t
(持续监控到目标IP的连通状态,需手动Ctrl + C
停止)
# 1.2 路由追踪
tracert <目标IP或域名>
- 用途:查看数据包到达目标所经历的路由节点,用于定位网络慢、网络中断在哪个节点发生
# 1.3 查看端口占用与连接状态
netstat -ano
用途:查看当前所有 TCP/UDP 连接,以及对应的进程 ID(PID),用于判断是否有端口被某进程占用
示例:
netstat -ano | find "8080" # 筛选所有使用8080端口的连接
1
# 2. 进程管理
# 2.1 查看进程列表
tasklist
- 用途:快速列出正在运行的进程、内存占用、PID 等
# 2.2 结束指定进程
taskkill /pid <PID> /f
taskkill /im <进程名> /f
2
用途:杀死占用端口、卡住的进程或不需要的后台进程
示例:
taskkill /im notepad.exe /f # 强制杀死记事本 taskkill /pid 1234 /f # 根据PID强制杀死进程
1
2
# 3. 文件与目录操作
# 3.1 快速查找并筛选日志
列出文件
dir /s *error*.log
1- 用途:从当前目录及子目录下查找文件名包含
error
的日志文件
- 用途:从当前目录及子目录下查找文件名包含
在文件内容中查找关键词
findstr /i "Exception" *.log
1用途:在当前目录下所有
.log
文件中查找包含“Exception”字样的行,并忽略大小写增强示例:
findstr /s /i /n "Exception" D:\logs\*.log
1/s
:包含子目录/n
:显示行号
# 3.2 批量复制或镜像目录
xcopy
xcopy "C:\source" "D:\backup" /s /e /y
1- /s:复制非空子目录
- /e:复制空目录
- /y:不提示覆盖
robocopy
robocopy "C:\source" "D:\backup" /mir
1- /mir:镜像模式,会使目标目录与源目录完全一致(包括删除在目标但不在源的文件)
# 4. 环境变量与系统信息
# 4.1 设置临时环境变量
set MY_VAR=HelloWorld
echo %MY_VAR%
2
- 用途:在当前 CMD 窗口下设置并查看名为
MY_VAR
的环境变量
# 4.2 设置系统环境变量
setx MY_VAR "HelloWorld" /m
- 用途:创建/修改一个系统级别环境变量(需以管理员身份运行)
- 注意:当前 CMD 不会立即生效,需要关闭并重新打开 CMD 或打开新的 CMD 窗口才能生效
# 4.3 查看系统信息
systeminfo
- 用途:查看计算机名称、系统版本、补丁信息、内存、网络配置等详细情况
# 5. 批处理脚本与自动化
# 5.1 将命令封装成 .bat
脚本
@echo off
echo "开始执行批处理..."
ping 192.168.1.10
dir /s *.log
pause
2
3
4
5
- 用途:把常用命令写进脚本,双击或在 CMD 中执行脚本文件,提高工作效率
# 5.2 重定向和管道组合
结果重定向到文件
netstat -ano > netstat_result.txt
1- 用途:将所有网络连接信息保存到本地文件以便分析
管道筛选结果
netstat -ano | find "8080" > port_8080_info.txt
1- 用途:将只包含
8080
关键字的行输出到文件
- 用途:将只包含
# 6. 远程管理与故障排查
# 6.1 Telnet 测试指定端口
telnet <IP> <端口>
用途:快速判断目标主机端口是否可访问,例如:
telnet 192.168.1.10 22
1- 若能连接成功,则说明端口开放,网络连通性正常;若连接失败,可能是端口未开启或被防火墙阻挡
# 6.2 远程共享/访问网络路径
net use Z: \\192.168.1.10\sharedfolder
- 用途:将远程共享文件夹映射为本地磁盘 Z:
# 7. 无法访问某服务排查思路
ping
测试网络是否通:ping 192.168.1.10
1如果不通,使用
tracert
查看路由节点故障:tracert 192.168.1.10
1如果主机可达,但服务端口无法访问,检查防火墙或用
telnet
测试:telnet 192.168.1.10 8080
1防火墙开放端口参考:windows开放端口,外部链接访问不成功 (opens new window)
查看本机(客户端)或目标主机(服务端)的端口占用:
netstat -ano | find "8080"
1根据进程 PID,用
taskkill
结束冲突进程或重新部署服务:taskkill /pid 1234 /f
1重新启动服务后,再次使用 ping 或 telnet 测试验证。
# 8. telnet 不是内部或外部命令
📌 错误信息解释:
'telnet' 不是内部或外部命令,也不是可运行的程序或批处理文件。
这个错误表示 Windows系统未安装 Telnet 客户端,导致无法使用 telnet
命令来测试网络端口的连通性。
# ✅ 解决方案:启用 Telnet 客户端
Windows 默认情况下是关闭 telnet
客户端的,你需要手动启用它。
方法一:使用控制面板启用 Telnet
- 打开控制面板:
- Win + R → 输入
control
→ 回车。
- Win + R → 输入
- 进入“程序”:
- 点击 程序 → 程序和功能。
- 启用 Windows 功能:
- 点击左侧的 启用或关闭 Windows 功能。
- 勾选 Telnet 客户端:
- 在弹出的窗口中找到 Telnet 客户端,勾选它,然后点击 确定。
- 等待安装完成,然后重启电脑(如有需要)。
方法二:使用命令行启用 Telnet
如果你希望通过命令行启用,可以使用以下命令:
以管理员身份运行 CMD(Win + R → 输入
cmd
→ 右键 → 以管理员身份运行)。输入以下命令启用 Telnet 客户端:
dism /online /Enable-Feature /FeatureName:TelnetClient
1等待完成后,重启电脑(如有需要)。
✅ 测试 Telnet 是否安装成功
打开
cmd
,输入:telnet 222.186.34.109 80
1如果出现黑屏并连接成功,表示端口是开放的;如果连接超时或失败,表示端口不可用。
# 🚀 替代方案(如不想启用Telnet)
如果不想启用 telnet
,可以使用 PowerShell
或 curl
测试端口:
使用 PowerShell 测试端口:
Test-NetConnection -ComputerName 222.186.34.109 -Port 80
使用 curl 测试端口:
curl -v http://222.186.34.109:80
✅ 总结
- 推荐启用
telnet
客户端,用于简单的端口连通性测试。 - 如果无法启用,也可以使用
PowerShell
的Test-NetConnection
命令进行测试。 - 完成启用后,重新打开命令行即可使用
telnet
命令。