2014-01-28 81 views
0

我想僅使用svn command line實用程序獲取特定文件。如何過濾svn導出

我有一個批處理腳本,它只能從vss獲取特定文件,使用工具vss

vss的命令是:

ss get *.c 

我需要svn命令行工具類似的功能。 我該如何開始?

+0

你想對'vss'擴展名的所有文件執行ss? – npocmaka

+0

不,我想使用svn命令實用程序遞歸地從svn中檢索感興趣的特定文件。 – Laxman

回答

1

您可以嘗試類似的方式,獲取與某些擴展名匹配的文件列表,如.txt或.c。

svn list -R http://svn/url/till/the/path/you/need/ | grep ".extension"

然後在上面的命令使用svn export的輸出的每一行獲得在本地計算機中的文件。

編輯:

庫= http://svn/url/till/the/path/need/

$目標目錄=機器

線路在svn list -R http://svn/url/till/the/path/need/ | grep ".extension"一些路徑 做

filename=`echo "$line" |sed "s|$repository||g"` 

    if [ ! -d $target_directory$filename ]; then 
    directory=`dirname $filename` 
    mkdir -p $target_directory$directory 
    svn export --force -r HEAD $repository$line $target_directory$filename --username abc --password password123 

網絡

完成

+0

如何存儲結果並訪問每個條目?如果我對結果使用'export',那麼這些文件是否會被遞歸地檢索? – Laxman

+0

更新了腳本unix –

+0

感謝您的腳本,我會嘗試將其轉換爲Windows。 – Laxman