Ich schlage vor, rsync anstelle von cp zu verwenden. Wenn möglich, hat es die Option -m, die leere Ordner ausschließt. Beispiel:
rsync -am <origin> <destination>
Erklärung des Befehls in explainhell.com
Ich verwende die Option -a, weil sie viele nette Standardaktionen ausführt. Wenn Sie möchten, können Sie auch die Option -r verwenden. Dadurch wird nur der rekursive Modus festgelegt.
[Einen Kommentar hinzufügen]
Ich kenne keinen Weg, dies mit cp zu tun, zumindest zeigt die Manpage keine Option, die das für Sie tun wird. Sie können wahrscheinlich eine komplexere Lösung find
erstellen, indem Sie mit dem Befehl eine Liste der zu kopierenden Dateien / Verzeichnisse suchen und diese dann an cp übergeben. Dies wäre jedoch viel komplizierter als rsync. rsync ist in vielen linuxen sogar ziemlich standard