
如果您在Windows系统中设置了共享文件夹,但需要实时掌握哪些用户正在连接并使用这些资源,则可通过系统内置的多种管理工具获取当前活跃的访问会话信息。以下是解决此问题的步骤:
一、通过计算机管理查看共享会话
该方法利用Windows系统自带的“计算机管理”控制台,直接读取当前SMB会话信息,无需额外安装软件,适用于Windows 10/11专业版、企业版及服务器版本。会话列表显示连接来源的计算机名、用户名(如已提供)、IP地址及登录时间。
1、右键点击“此电脑”或“我的电脑”图标,选择“管理”选项。
2、在左侧导航栏中,依次展开“系统工具”→“共享文件夹”→“会话”。
3、右侧窗格将列出所有当前活跃的会话,包含“客户端计算机”、“用户名”、“打开的文件数”和“空闲时间”等列。
4、若需终止某一会话,可在右侧列表中右键单击对应条目,选择“关闭会话”,并在弹出提示中点击“是”确认。
二、使用命令行查看SMB会话(net session)
该方式依赖Windows内置的net session命令,可快速获取当前连接到本机共享资源的客户端摘要信息,适合习惯命令行操作或需批量检查的场景。执行前需以管理员身份运行命令提示符。
1、按Win + X组合键,选择“Windows终端(管理员)”或“命令提示符(管理员)”。
2、输入命令:net session,然后按回车。
3、屏幕将显示包括“会话自”、“用户名”、“客户端计算机”、“类型”及“空闲时间”的表格化结果。
4、如提示“发生系统错误 5”,表示当前无活动会话,或当前用户权限不足;请确认是否以管理员身份运行。
三、使用PowerShell获取详细SMB连接信息
PowerShell提供更结构化的输出能力,Get-SmbSession命令可返回每个会话的客户端IP、认证协议、会话状态等字段,支持筛选与导出,适用于Windows 8及以上系统(含Windows 10/11)。
1、以管理员身份启动Windows终端(PowerShell模式)。
2、输入命令:Get-SmbSession | Select-Object ClientComputerName, ClientUserName, SessionId, TransportName,按回车执行。
3、如需同时查看被打开的文件,可追加执行:Get-SmbOpenFile | Select-Object ClientComputerName, Path, LockCount。
4、若提示“找不到名称为‘Get-SmbSession’的cmdlet”,说明当前系统未启用SMB服务器功能或PowerShell版本过低,请确认系统为Windows专业版及以上且SMB 2.0+已启用。
四、通过计算机管理查看“打开的文件”
该视图直接展示当前被远程用户打开的具体文件路径及所属会话,可用于精确定位正在被读取或编辑的共享资源,适用于排查文件占用或锁定问题。
1、右键点击“此电脑”,选择“管理”。
2、左侧导航栏中依次展开“系统工具”→“共享文件夹”→“打开的文件”。
3、右侧窗口显示所有已被远程客户端打开的文件,包括“打开者”、“路径”、“打开模式”和“锁数”等字段。
4、如需强制关闭某个文件句柄,可在对应条目上右键,选择“关闭打开的文件”。
五、使用fsmgmt.msc管理控制台
该独立管理单元提供图形化共享资源总览,集中呈现共享项、会话与打开文件三大核心视图,操作路径与计算机管理一致但启动更快,适合快速切入共享监控场景。
1、按下Win + R组合键,打开“运行”对话框。
2、输入:fsmgmt.msc,然后按回车。
3、窗口自动加载后,在左侧树形菜单中依次点击“共享”、“会话”、“打开的文件”即可切换查看。
4、所有操作(如断开会话、关闭文件)均支持右键菜单调用,无需返回主管理界面。

评论(0)