有没有一种方法可以让我在不同的平台上都能用Python连接到samba共享?
更多信息
我不想把共享文件夹挂载上去。我只是想把文件上传到共享里,就像smbclient的put命令那样。
谢谢,
皮特
根据这个问题,我会使用subprocess来在类Unix系统(除了Windows以外的大多数系统)中执行mount命令,而在Windows上则使用mountvol,不过那个StackOverflow的问题没有提到这一点。这两者之间的区别很小,只是在传给subprocess的字符串上有一点不同,完全可以封装成一个小函数。这可能也是我觉得这个问题没有什么“第三方解决方案”的原因——因为这个问题实在是太小了;-)。
subprocess
mount
mountvol
如果你不想挂载文件系统,nosklo(一个常在SO上发帖的人)提供了一个包,可以直接访问文件系统,不过我还没有试过这个。
pysmb 似乎是用来做这个的:https://miketeo.net/wp/index.php/projects/pysmb(这是更新后的链接)