子流程产生的输出与直接控制台命令产生的输出不同

时间:2019-06-18 17:17:24

标签: python subprocess

我正在通过子流程传递命令,以将一个文件夹复制到另一个文件夹,但是输出返回不同

我尝试在cmd控制台中使用相同的子流程代码,而该控制台将整个文件夹复制到子流程版本中,而仅复制源内容。

subprocess.Popen('xcopy /S /Y /i C:\\sourceFolder sourceFolder', cwd='C:\\whatever\\')
C:\\whatever>xcopy /S /Y /i C:\\sourceFolder sourceFolder

当子进程被执行时,文件夹“ whatever”将填充“ sourceFolder”内容: C:\whatever\(file1,file2,file3)

当实际命令直接在cmd中执行时,“无论如何”文件夹都将填充“ sourceFolder”文件夹,这是我期望的输出: C:\whatever\sourceFolder\(file1,file2,file3)

为什么会这样?

0 个答案:

没有答案