Linux如何列出svn一個文件夾下的所有文件


有時候我們要搜索一個文檔,不知道在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中帶空格的文件和目錄是導不出來的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM