Следующее должно сделать то, что Вы хотите:
rsync --recursive --prune-empty-dirs --include '*/' --include '*/B/**' --exclude '**' origin_path/ destination_path/
Первое правило включает все каталоги (иначе rsync, не будет убывать в высокоуровневые каталоги). Второе правило включает все в "B" подкаталоги. Третье правило исключает все остальное. --prune-empty-dirs
опция игнорирует пустые каталоги (так как мы включаем все каталоги с первым правилом).
Если Вы уже используете рычаги входа в систему затем, текущий пользователь должен становиться переданным как первый параметр Вашему сценарию. Попробуйте 1$.
Разве Вы не хотите использовать loginhooks для этого?
выборка того потока
loginhook
Это - место, где можно присоединить сценарий, поскольку пользователь входит в систему. Вы - все еще пользователь root на время сценария, но сразу после того, как сценарий заканчивает Вас, становятся входящим в систему пользователем.