В /opt
меня есть много разных каталогов, некоторые из которых содержат _pkg_linux_deb_
или _pkg_android_apk_
в середине их имени. Эти каталоги также содержат много подкаталогов, один из которых является lastSuccessful
который, в свою очередь, содержит archive
качестве своего собственного подкаталога. Я хочу, чтобы файлы из этих archive
подкаталогов были rsync'ами, сохраняя всю структуру каталогов, например, foo_pkg_linux_deb_bar/lastSuccessful/archive/dir1/dir2/dirN/foo.ext
Вот правило, которое я придумал, но оно не работает:
rsync -rnvm --include='/*(_pkg_linux_deb_|_pkg_android_apk_)*/lastSuccessful/archive/***' --exclude='*' /opt/ dest/
Далее используется расширение bash, и оно работает, но место назначения не содержит всей структуры каталогов, оно отсутствует *{_pkg_linux_deb_,_pkg_android_apk_}*/lastSuccessful/archive/
directory, помещая только содержимое archive/
в dest/
rsync -rnvm /opt/*{_pkg_linux_deb_,_pkg_android_apk_}*/lastSuccessful/archive/ dest/