find . -name "*" -exec scp '{}' example@unixlinux.online:/directory ';'
Normalmente Vorrei "targare" tutti i file insieme in un enorme blob e chiamare "scp" solo una volta. Qualcosa del genere:
tar czfv - file1 file2 dir1 dir2 | ssh example@unixlinux.online/ tar xvzf - -C directory
- Si potrebbe giocare con i parametri --exclude=o --include=di tar.
- Un'altra opzione sarebbe usare rsync.
Puoi farlo con un solo comando scp
.
- per le versioni più recenti di
scp
:
scp `find <path> -name <expression>` example@unixlinux.online:<path_where_to_copy>
- per le versioni precedenti:
scp --exec=`find <path> -name <expression>` example@unixlinux.online:<path_where_to_copy>
Assicurati di incapsulare il find
comando tra backtick ` e non virgolette singole ' .
for f in `find . -name "*"`;do scp $f example@unixlinux.online/directory;done