我对 Subversion 很陌生,在 Python 方面没有那么丰富的经验,但是我正在处理需要在目录中移动的大量媒体文件。使用 Visions GUI,一些文件传输需要很长时间,所以我想通过将操作存储在文本文件中然后让 python 脚本在一夜之间对这些操作进行自动化,从而使这些任务在夜间运行?
例如,文本文件可能包含如下命令:
svn mv current desired
如何将此字符串发送到终端以执行命令?
该subprocess
模块是执行命令的最佳方式。正如@Abgan 指出的那样,更好的方法可能是使用颠覆库。
如果您在 Windows 上,最好使用 SVN 库。在 Linux/Mac/Unix 上,您实际上可以采用任何一种方式,因为它们可以很好地运行子进程——windows 在这方面做得不是很好。
subprocess 今天确实比 os.system 更受欢迎。
使用 subprocess.Popen 而不是 SVN 库(模块)的好处是您不必学习两种访问 SVN 的方法。您的命令行 SVN 知识直接转化为您的代码。