我正在尝试编写一个可以在远程 Linux 服务器上移动和复制文件的 Python 脚本。但是,我不能假设每个运行脚本(在 Windows 上)的人都会将此服务器映射到同一个字母。与其提示用户输入正确的字母,我只想通过其网络 URL(驱动器号映射到的那个)访问服务器。因此,例如,如果我映射了服务器的 URL
\\name-of-machine.site.company.com
要成为驱动器 S:\,我想以与驱动器号无关的方式访问文件 S:\var\SomeFile.txt。我环顾四周,一般建议似乎是使用 UNC 表示法:
f = open(r"\\name-of-machine.site.company.com\var\SomeFile.txt", "w")
但是如果我尝试这个,一个 IOError 说没有这样的文件或目录。如果我尝试使用服务器的 IP 地址(不是真实地址,但类似):
f = open(r"\\10.1.123.149\var\SomeFile.txt", "w")
长时间停顿后,我得到一个 IO 错误:“无效模式 ('w') 或文件名”。为什么这些符号不起作用,我如何通过其 URL 访问该服务器(理想情况下,就像它是本地驱动器一样)?