我正在使用批處理文件來只更新那些在我的SVN存儲庫中發生更改的文件。這是我的批處理文件的一部分:批處理FOR/F和文件/路徑名和空間使用令牌?
SET CHANGES=svnlook changed c:\myrepository
FOR /F "usebackq tokens=2" %%a IN (`%CHANGES%`) DO (echo %%a)
我只得到DOK代替DOK version1.txt,我猜是因爲空間的多數民衆贊成。即使有空間,我如何更改代碼以獲取文件名?那是因爲令牌還是它在哪裏切斷了名字?
svnlook的的輸出看起來像:
d Testprojekt /中繼/ DOK - Kopie(2).txt文件
d Testprojekt /中繼/ DOK - Kopie(3).txt文件
d Testprojekt /中繼線/ dok - Kopie(4).txt
因此,我使用tokens = 2僅獲取路徑(Testprojekt/trunk/dok - Kopie(2).txt)而不是動作(例如D =刪除)。
謝謝!
能否請您編輯的問題,並添加原料svnlook的輸出樣本的休息嗎? – 2012-01-09 12:26:12
是的,我增加了輸出... – EOB 2012-01-09 12:31:24