我正在通过子流程传递命令,以将一个文件夹复制到另一个文件夹,但是输出返回不同
我尝试在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)
为什么会这样?