echo "12345,12346" |sed -e's/ //'|tr "," "\n"| while read line; do echo -n $line" "; svn log -vr $line https://url/to/svn/repository/|grep "/"|head -1|cut -d"/" -f2; done
Команда echo "12345,12346" |sed -e's/ //'|tr "," "\n"| while read line; do echo -n $line" "; svn log -vr $line https://url/to/svn/repository/|grep "/"|head -1|cut -d"/" -f2; done
позволяет найти директорию SVN, в которой был сделан коммит с указанными номерами ревизий. Команда начинается с создания списка ревизий с помощью echo
, sed
используется для удаления пробелов, tr
заменяет запятую на новую строку, while read
считывает каждую строку в переменную line
. Далее, происходит выполнение команды svn log -vr $line https://url/to/svn/repository/
, которая выводит информацию о коммите для каждой ревизии. Команда grep "/"
ищет первую строку с символом «/», head -1
выбирает только первую строку, а cut -d"/" -f2
разделяет строку по символу «/» и выбирает второй элемент (директорию). Альтернативой может быть использование GUI-клиента SVN или команды svn ls -v -R https://url/to/svn/repository/
, чтобы просмотреть все коммиты в репозитории. Передаваемые команде аргументы: список ревизий и URL репозитория.