有时候我们要搜索一个文档,不知道在svn的什么地方,所以写了一个脚本导出一个svn目录下所有的文件名。

导出SVN中的文件和目录名

文件名为:export_svn_filename.sh

#!/bin/bash

AUTHSTR="--username username --password passwd --no-auth-cache --non-interactive"
function list()
{
        DIRNAME=${1%/*}
        echo "${DIRNAME}/"
        for i in `svn list ${DIRNAME} ${AUTHSTR}`
        do
          if [ ${i:0-1:1} == "/" ];then
               list "${DIRNAME}/${i}"
               DIRNAME=${1%/*}
          fi
          echo ${DIRNAME}/$i
        done
}

list $1

执行

sh export_svn_filename.sh svn://ip:port/aaa   >>  result.txt

提取出文件名

过长的目录名看起来闹心,删除过长的目录名,只保留文件名:
文件名:filename_filter.sh

#!/bin/bash

for i in `cat $1`
do
   echo ${i##*/}
done

执行

sh filename_filter.sh result.txt >> result2.txt

当然脚本有个BUG,SVN中带空格的文件和目录是导不出来的。

posted on 2020-07-08 18:39  步孤天  阅读(1789)  评论(0编辑  收藏  举报