获取所有文件夹的列表但不是文件
Getting list of all folders but not the files
我正在尝试使用 svn 命令从 svn 收集所有文件夹和子文件夹。名单很大。
我试过在 svn 上创建一个空文件夹并将其与 base 进行比较,但它在 4 小时后崩溃了。
今天早上我尝试了以下方法:
svn list --depth infinity http://serverip/svn/root/
到目前为止已经 运行 将近 6 个小时,但仍未完成,它列出了所有文件。
我用 grep
和 egrep
参数尝试了其他几种方法,但无法识别,所以我相信它们可能是 Bash 命令,我在 windows 这样就可以解释为什么它没有做任何好事。
我想要的只是根目录中的所有文件夹和子文件夹。如果可能的话,我会过滤特定的文件夹名称,如“/tag-088/121359/”。如果我无法在命令中进行过滤,这没什么大不了的,很容易在 excel 或类似的范围内过滤自己。主要目标是只选择文件夹和子文件夹,而不是文件。
我有大约 4.2 TB 的 svn,所以它有点慢,可能正因为如此,所以这就是为什么我试图列出没有文件的原因。
如果您可以访问服务器(假设您知道存储库的大小,我假设您可以),您可以考虑使用 svnlook
程序。与 svn
一样,svnlook
提供了子命令的集合。您需要 svnlook tree
子命令,特别是 --full-paths
选项,它会导致它打印其输出 one-path-per-line 而不是使用 nested/indented 方法。通过仅保留以斜杠字符结尾的输出的 grep
进行管道传输(仅对目录路径为真),您将获得所需的列表。
$ svnlook tree /path/to/repos --full-paths | grep '/$'
/
/trunk/
/trunk/dir/
/trunk/otherdir/
/tags/
/tags/my-tag/
/tags/my-tag/dir/
/tags/my-tag/otherdir/
...
我正在尝试使用 svn 命令从 svn 收集所有文件夹和子文件夹。名单很大。
我试过在 svn 上创建一个空文件夹并将其与 base 进行比较,但它在 4 小时后崩溃了。
今天早上我尝试了以下方法:
svn list --depth infinity http://serverip/svn/root/
到目前为止已经 运行 将近 6 个小时,但仍未完成,它列出了所有文件。
我用 grep
和 egrep
参数尝试了其他几种方法,但无法识别,所以我相信它们可能是 Bash 命令,我在 windows 这样就可以解释为什么它没有做任何好事。
我想要的只是根目录中的所有文件夹和子文件夹。如果可能的话,我会过滤特定的文件夹名称,如“/tag-088/121359/”。如果我无法在命令中进行过滤,这没什么大不了的,很容易在 excel 或类似的范围内过滤自己。主要目标是只选择文件夹和子文件夹,而不是文件。
我有大约 4.2 TB 的 svn,所以它有点慢,可能正因为如此,所以这就是为什么我试图列出没有文件的原因。
如果您可以访问服务器(假设您知道存储库的大小,我假设您可以),您可以考虑使用 svnlook
程序。与 svn
一样,svnlook
提供了子命令的集合。您需要 svnlook tree
子命令,特别是 --full-paths
选项,它会导致它打印其输出 one-path-per-line 而不是使用 nested/indented 方法。通过仅保留以斜杠字符结尾的输出的 grep
进行管道传输(仅对目录路径为真),您将获得所需的列表。
$ svnlook tree /path/to/repos --full-paths | grep '/$'
/
/trunk/
/trunk/dir/
/trunk/otherdir/
/tags/
/tags/my-tag/
/tags/my-tag/dir/
/tags/my-tag/otherdir/
...