从Python调用cmd时出现Windows错误2
我想在Python中调用命令行的“move”命令。
cmd1 = ["move", spath , npath]
startupinfo = subprocess.STARTUPINFO()
startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
p = subprocess.Popen(cmd1, startupinfo=startupinfo)
这个命令在命令行中可以正常工作,我可以移动文件。但是用这段Python代码时,我遇到了:
WindowsError: [错误 2] 系统找不到指定的文件
Spath和npath是指向文件夹的绝对路径,所以即使在其他目录下也不应该有问题。
[编辑] 回复Tim的回答:那我该如何移动一个文件夹呢?
2 个回答
2
试着使用 cmd1 = ["cmd", "/c", "move", spath, npath]
这个命令。
3
move
是直接内置在 cmd
命令行中的,所以你不能像调用文件命令那样使用它。
你可以使用 shutil.move()
,但这样做会“忘记”所有的备用数据流、访问控制列表等信息。