【发布时间】:2012-07-07 06:05:36
【问题描述】:
好的,所以在 Windows 中使用 Python 我正在尝试运行一个批处理命令,该命令是移动文件的“移动”命令。我知道它可以使用 python 中的shutil 来完成,但它给我带来了麻烦。
move /-y "%~dp0itself.py" "C:\folder\folder2\"
作为批处理文件单独运行时效果很好。
import subprocess
process = subprocess.Popen(move /-y "%~dp0sarpedon.py" "C:\Utility\Config\", shell=True, stdout=subprocess.PIPE)
process.wait()
print process.returncode
我尝试将它添加到 python 中的其他一些代码的末尾,但我不断收到错误,它说我的语法无效,因为
"%~dp0sarpedon.py (")
我用来修复它的很多尝试都以错误结束:
EOL while scanning string literal.
因为右括号
(move /-y "%~dp0sarpedon.py" "C:\Utility\Config\", shell=True, stdout=subprocess.PIPE ")"
我该如何解决这个问题?
【问题讨论】:
-
你可能想用 echo 命令来练习。字符串在tutorial 和library reference 中描述
标签: python windows batch-file subprocess move