Risposte:
Se sto leggendo le tue richieste correttamente, non ci sono file da cui partire foo a bar. Sembra che tu possa semplicemente copiare il contenuto di bar a foo, lasciandolo sovrascrivere i file se necessario (il suo comportamento predefinito).
$ cp -R /path/to/bar/* /path/to/foo
cp -R /path/to/bar /path/to/foo creerebbe una directory bar dentro foo. Punto sottile
bar (cioè con nomi che iniziano con un punto - . ) a causa di come funziona il guscio globbing.
Ho avuto un bisogno molto simile: unire bar in foo ma i file che sono in bar non dovrebbe sovrascrivi i file corrispondenti in foo. In questo caso:
$ cp -R -n /path/to/bar/* /path/to/foo/
Prova questo :
$ cp -r-u-v /path/to/foo/* /path/to/bar/
A partire dal man cp
-u, --aggiornamento copia solo quando il file SOURCE è più recente del file di destinazione o quando manca il file di destinazione
-R, -r, --recursive copiare le directory in modo ricorsivo
man cp - & gt; -u, --update: copia solo quando il file SOURCE è più recente del file di destinazione o quando manca il file di destinazione