2012-07-27 68 views
3

我是Subversion的新手,而不是Python中的經驗,但是我需要處理大量需要在目錄中移動的媒體文件。使用Visions GUI,一些文件傳輸需要很長時間,所以我想通過將這些操作存儲在文本文件中然後讓Python腳本在夜間採取行動來將這些任務自動運行一夜。使用Python自動執行Subversion命令

例如,文本文件可能包含一個命令,例如:

svn mv current desired 

我怎麼能這個字符串發送到終端執行命令?

回答

4

你可以做os.system調用或嘗試使用PySVN,這可能會讓你在使用Python的SVN倉庫中獲得更多的控制權。

+0

//我以爲PySVN是一個GUI客戶端,而不是自動化庫。 – 2015-12-12 07:41:47

+0

PySVN附帶一個Workbench,它是一個GUI客戶端。但請參閱http://pysvn.tigris.org/docs/pysvn_prog_guide.html獲取PySVN程序員指南,您會發現從Python內部使用SVN回購是很好的API。 – Abgan 2016-02-11 11:54:47

0

subprocess模塊是執行命令的最佳方式。正如@Abgan指出的,更好的方法可能是使用顛覆庫。

-1

如果你在Windows上,最好使用SVN庫。在Linux/Mac/Unix上,你可以採用任何一種方式,因爲它們可以很好地運行子進程 - windows在這方面做得並不好。

今天的子流程確實比os.system更受歡迎。

使用subprocess.Popen而不是SVN庫(模塊)的好處是,您不必學習兩種訪問SVN的方式。您的命令行SVN知識直接轉換爲您的代碼。