将文件复制到Windows桌面

时间:2019-07-03 06:59:33

标签: python python-3.x desktop shutil

我想将文件从一个位置复制到当前用户的桌面路径。要在Windows CMD中获得此权限,应为%userprofile%\Desktop

我尝试过:

source_path = r"\\cpd-sts\UsersSoftware\Cognos"
dest_path = os.path.join(os.environ["HOMEPATH"], "Desktop")
file_name = "\\Impromptu_User.zip"
shutil.copyfile(source_path + file_name, dest_path + file_name)

输出错误为:

FileNotFoundError: [Errno 2] No such file or directory: '\\Users\\joshua\\Desktop\\Impromptu_User.zip'

3 个答案:

答案 0 :(得分:0)

Unix使用/进行文件分离,而不使用\。请尝试以下操作:

source_path = r"/cpd-sts/UsersSoftware/Cognos"
dest_path = os.path.join(os.environ["HOMEPATH"], "Desktop")
file_name = "/Impromptu_User.zip"
shutil.copyfile(source_path + file_name, dest_path + file_name)

答案 1 :(得分:0)

您未在目标路径中指定“驱动器”,例如C:。 Windows上的HOMEPATH环境变量不包含它。还有第二个变量HOMEDRIVE,您必须在该变量之前加上路径。再说一遍,不清楚为什么不首先使用USERPROFILE,因为您在问题中特别提到了它,并且其中包括驱动器路径。

您可能要为此使用winshell软件包,因为它提供了访问这些特殊文件夹的便捷功能:

>>> import winshell
>>> winshell.desktop()
'C:\\Users\\(username)\\Desktop'

答案 2 :(得分:-1)

我找到了解决方法:

source_path = r"\\cpd-sts\UsersSoftware\Cognos"
dest_path = ("C:" + (os.path.join(os.environ["HOMEPATH"], "Desktop")) + "/Cognos")
file_name = "\\Impromptu_User.zip"
shutil.copyfile(source_path + file_name, dest_path + file_name)