2013-06-14 2 views
1

SVN 저장소에서 전체 경로가있는 파일 목록을 가져오고 싶습니다.
명령을 사용하여 (svn list -R 192.0.0.0/Project/BRANCH1). 전체 경로가있는 파일 목록을 가져오고 있지만 parentfolder, parentfolder/subfolder으로 표시됩니다. 예를 들어, 내가 svn 저장소로 192.0.0.0/Project/BRANCH1전체 경로로 SVN에서 파일 목록

그 Branch1 나는 success.jsp 같은 파일이 있습니다. 명령 (svn list -R 192.0.0.0/Project/BRANCH1)을 사용하여 BRANCH1/으로 표시하고 BRANCH1/success.jsp으로 표시합니다.

여기서 간단히 BRANCH1/success.jsp으로 원합니다.

또한 (svn list) 명령을 사용하여 파일 목록을 얻었지만 단순히 jsp 페이지 이름이 아닌 파일 브랜치 (BRANCH1)의 폴더 이름으로 표시됩니다. 내가 BRANCH1/success.jsp

당신이 중 하나가 SVN 명령을 사용하여 전체 경로와 SVN에서 파일의 목록을 얻으려면 좀 도와 주 시겠어요으로 표시 할 BRANCH1로이 표시됩니다.

+8

왜 우리가 씁니까? –

답변

1

아마도 다음 명령 줄을 사용하면 도움이 될 것입니다. 출력에서 문자 '/'로 끝나는 모든 행을 제거합니다. 즉, 디렉토리를 제거합니다.

svn ls -R | grep -v '/$' 

더 많은 컨트롤이 필요하면, 내가 옵션 --xml을 사용하고 스크립트의 출력을 처리하는 것이 좋습니다. 예를 들어, 다음 python 스크립트는 svn ls -R --xml | /tmp/filter.pz과 함께 호출 할 때 모든 파일의 전체 경로 이름을 인쇄합니다.

#! /usr/bin/env python3 
import sys, lxml.etree 
document = lxml.etree.parse(sys.stdin.buffer) 
for entry in document.xpath('//entry[@kind="file"]'): 
    print(entry.xpath('string(name)')) 
관련 문제