使用 rsync 列出路径中某处的子文件夹

使用 rsync 列出路径中某处的子文件夹

我正在开发一个程序,它将递归地“遍历”Linux 存储库,查找与 PXE 相关的文件并创建 gPXE 配置。

我遇到了镜像上的 Ubuntu 目录结构问题。我需要重新访问此目录,以便进行实例:/dists/precise/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/

我们可以看到,有许多变量目录:preciseinstaller-$ARCH$arch

我不知道为什么,但是我的 rsync 配置与任何子文件夹都不匹配current/images。UPD:

+ dists/
+ dists/*
+ dists/*/main/
+ dists/*/main/*
+ dists/*/main/*/current
+ dists/*/main/*/current/
+ dists/*/main/*/current/images
+ dists/*/main/*/current/images/***
- *

UPD:现在它在/current目录中失败了。如果我将 current 放在末尾并加上斜线,则无法通过 rsync 接收它,因此它会停止一个目录。这个或那个 rsync 不会比 current 更深,因此images使用当前配置我不会得到任何东西。

我不想要任何非当前配置。如何正确创建仅包含mainnetboot 内容的配置。

UPD:rsync 命令是rsync -r --no-motd --include-from=newinclude rsync://mirrors.kernel.org/ubuntu

解决方案:好的,很好!

问题在于 Ubuntu 使用一种友好的方式来表示当前的构建和版本,并将其与当前的符号链接保持在一起。如果你使用 -l 标志启动 rsync,你会看到它是安装程序中某个目录的链接

 lrwxrwxrwx dists/trusty/main/installer-amd64/current -> 20101020ubuntu300

相关内容