gpt4 book ai didi

python - 如何在 Windows 上使用 Python 访问远程文件系统?

转载 作者:可可西里 更新时间:2023-11-01 11:36:16 25 4
gpt4 key购买 nike

我正在编写一个 Python 脚本来访问网络上的所有计算机,登录到它们并读取一些日志文件。我不想使用像 socket 这样低级的东西, 但如果必须的话,我可以。我意识到我的问题类似于 this question , 但不一样。

是否有用于访问外部 Windows 机器的模块?以前有人做过这样的事吗?

我特别希望登录 Windows 7 机器,不是 unix。

我们还假设我要登录的每台计算机都安装并启用了远程桌面。我也不担心网络安全或加密,因为这些文件不是 secret 的。默认情况下,Windows 机器上没有安装 SSH 吗?

最佳答案

另一边一定有什么东西可以让你说话。这限制了您在每台机器上设置“服务器”、安装真实服务器(即 sshd)、自己构建“服务器”并安装它,或者使用操作系统的内置和事件功能。

基于此,你想在这些机器上设置什么样的系统?它需要做什么?只是读取一个预先指定的文件列表的内容?该列表会改变吗?

  • 一种解决方案是打开 telnet,然后使用 paramiko 或 twisted 来谈论它。这当然不是很安全
  • 接下来,设置一个 samba 共享,并远程访问该文件夹。这个也不安全,尽管不如 telnet 安全
  • 你可以找到一个 ssh 守护程序端口并运行它,如果你愿意的话
  • 来自 sysinternals 的 Psexec 可能有效
  • 使用 twisted 构建具有您需要的功能的服务器应用
  • 使用 ncat 监听端口并生成 cmd 提示符

请注意,大多数远程访问 Windows 的解决方案都...很差。最好的解决方案可能是自己动手,但这是一项艰苦的工作,而且您可能会犯错误。

此外,Windows 7 完全适合多用户使用。单个进程可以作为单独的用户运行,但操作系统不支持多个用户同时登录。有人将成为“用户”,其他人只是一个具有不同凭证集的进程。

这更多是 M$ 的人为限制,而不是任何技术限制。要查看实际效果,请尝试在用户在本地登录时使用 RDP 登录。欢乐时光。

根据您的编辑,最简单的事情就是在盒子上设置 samba 共享。

设置此共享后:

with open(r'\\myCompNameOrIP\C\windows\logs\logfile.txt','rb') as logfile:
loglines = logfile.readlines()

或者您可以使用 gencat找到样本 here .只需将 r'\\myCompNameOrIP\C\windows\logs\*.txt' 作为搜索路径,然后观看魔术。

关于python - 如何在 Windows 上使用 Python 访问远程文件系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10820376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com