Windows中可通过PowerShell命令Get-SmbSession查看SMB会话详情,Get-SmbOpenFile查看被打开的共享文件,net session和net statistics server适用于旧版或快速摘要,需确保LanmanServer服务运行。
windows 系统中,可通过命令行快速查看当前活动的 smb 会话和已打开的共享文件,无需图形界面,适合远程管理或脚本集成。
查看当前所有 SMB 会话
使用 PowerShell 命令获取结构化、可筛选的会话信息:
- 以管理员身份运行 Windows 终端(PowerShell)
- 执行:Get-SmbSession —— 显示全部会话,含客户端名、用户名、IP、协议版本、状态等
- 常用筛选示例:
Get-SmbSession | Where-Object {$_.Status -eq "Connected"}(只看已连接的)
Get-SmbSession | Select-Object ClientComputerName, ClientUserName, TransportName, SessionId(精简字段输出)
查看当前被打开的共享文件
定位哪些文件正被远程用户占用,便于排查锁定或强制关闭:
直播话术巡检系统(Windows版) — 实时语音转写、关键词检测、场景自动切换、告警推送、大屏可视化。支持 Windows VB-Cable 虚拟声卡音频采集,阿里云 ASR 实时识别。一键启动脚本,自动安装环境。
- 在管理员 PowerShell 中运行:Get-SmbOpenFile
- 输出包含:文件路径、客户端计算机名、打开该文件的用户名、会话 ID、打开时间
- 如需终止某文件访问,可配合会话 ID 执行:
Close-SmbOpenFile -ID-Force (需确认权限)
兼容旧版系统的命令行方式
适用于 Windows 10/11 家庭版或需快速摘要的场景:
- 管理员命令提示符下运行:net session —— 列出客户端名、用户名、空闲时间等基础会话信息
- 运行:net statistics server —— 查看服务器级统计,如“会话接收数”“会话超时秒数”,辅助判断是否接近连接上限
- 注意:net session 不显示 IP 地址,且在家庭版中可能受限;建议优先用 PowerShell 命令
补充:验证 SMB 服务状态
若命令无返回或报错,先确认 SMB 服务是否运行:
- Get-Service LanmanServer —— 检查“Server”服务状态(必须为 Running)
- 如已停止,可用:Start-Service LanmanServer 启动

















