如果不使用 cygwin 之类的东西,有没有办法从命令行找出所有登录 Windows 服务器的人?
答案1
who
:
奎斯塔 查询站
w
,finger
:
穩瑟 查询用户
可以使用以下方式编写自定义工具WTSEnumerateSessions()
和WTSQuerySessionInformation()
- 非常容易使用使用 PyWin32 的 Python:
import win32ts
protocols = {
win32ts.WTS_PROTOCOL_TYPE_CONSOLE: "console",
win32ts.WTS_PROTOCOL_TYPE_ICA: "citrix",
win32ts.WTS_PROTOCOL_TYPE_RDP: "rdp",
}
## alternatively, hServer = win32ts.WTSOpenServer("hostname")
hServer = win32ts.WTS_CURRENT_SERVER_HANDLE
currentSessId = win32ts.WTSGetActiveConsoleSessionId()
for session in win32ts.WTSEnumerateSessions(hServer):
sessionId = session["SessionId"]
session["UserName"] = win32ts.WTSQuerySessionInformation(hServer, sessionId, win32ts.WTSUserName)
session["WinStationName"] = session["WinStationName"] or "(disconnected)"
session["Protocol"] = win32ts.WTSQuerySessionInformation(hServer, sessionId, win32ts.WTSClientProtocolType)
session["ProtocolName"] = protocols.get(session["Protocol"], "unknown")
print "%(UserName)-20s %(WinStationName)s (%(ProtocolName)s/%(SessionId)d)" % session
答案2
尝试
WMIC /Node:remotecomputer ComputerSystem Get UserName
例如
WMIC /Node:127.0.0.1 ComputerSystem Get UserName
更多信息:
答案3
看看微软的 Sysinternals 工具登陆
答案4
输入query user
或query user /server:remoteserver
查看当前登录用户的列表。这还会告诉您他们是如何登录的。这适用于独立服务器和工作站以及终端服务器