svn - 在机器上找到所有颠覆工作副本

标签 svn bash unix find

我如何使用 find unix 实用程序来查找机器上的所有工作副本?例如,我可以使用 find/-name .svn -type d 命令,但它会输出所有冗余结果(很多子文件夹),而我只需要显示工作副本的父目录。

有相关问题,但对我的情况没有帮助:How can I find the root folder of a given subversion working copy

最佳答案

也许是这样的?

#!/bin/bash
if [ -d "$1/.svn" ]; then
        echo $1
else
        for d in $1/*
        do
                if [ -d "$d" ]; then
                        ( $0 $d )
                fi;
        done
fi;

命名它,例如 - find_svn.sh,使其可执行,然后像 ./find_svn.sh/var/www 一样调用(可能需要一些调整以标准化目录名称,剥离尾部斜线..但以这种形式对我有用,当在没有尾部斜线的情况下调用某个目录时)。

关于svn - 在机器上找到所有颠覆工作副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2134001/

相关文章:

Linux I/O 重定向

linux - Subversion+Apache authz 未授权

svn - 如何避免 "svn: Out of Date:"问题?

svn - 如何在 Windows 上从 SVN 迁移/转换到 Mercurial (hg)

c - 如何在 UNIX 上使用 C 日期和时间函数?

windows - 我如何在没有操作系统中介的情况下访问我的系统资源?

linux - `set -x` 有什么作用?

svn - 如何从 SVN 获取 HEAD 之前的上一个版本?

bash - 从大文件中查找和替换

linux - 使用 sh 脚本跳过密码提示