2014-01-28 2 views
0

Я хочу получить только определенные файлы, используя svn command line utlity.как фильтровать svn export

У меня есть пакетный скрипт, который получает только определенные файлы от vss, используя ss инструмент vss.

В vss команда:

ss get *.c 

мне нужна схожая функциональность svn командной утилиты. Как я могу начать?

+0

Вы хотите exexute ss по всем файлам с расширением 'vss'? – npocmaka

+0

Нет, я хочу получить определенные файлы, представляющие интерес, из svn, используя утилиту svn command рекурсивно. – Laxman

ответ

1

Вы можете попробовать что-то вроде, получить список файлов, которые соответствуют некоторому расширению, например .txt или .c.

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

Тогда для каждой строки в выходе выше использования команды svn export, чтобы получить файлы в вашей локальной машине.

Edit:

репозиторий = 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 

фи

done

+0

Как сохранить результат и получить доступ к каждой записи? Если я использую 'export' в результате, будут ли файлы рекурсивно получать? – Laxman

+0

Обновлен скриптом для unix –

+0

спасибо за скрипт, я попытаюсь преобразовать его для окон. – Laxman

Смежные вопросы