GNU/Linux >> Linux Esercitazione >  >> Linux

Vorrei convogliare l'output di find nell'elenco di input di scp, come?

find . -name "*" -exec scp '{}' [email protected]:/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 [email protected]/ 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>` [email protected]:<path_where_to_copy>
  • per le versioni precedenti:
scp --exec=`find <path> -name <expression>` [email protected]:<path_where_to_copy>

Assicurati di incapsulare il find comando tra backtick ` e non virgolette singole ' .


for f in `find . -name "*"`;do scp $f [email protected]/directory;done

Linux
  1. Come memorizzare l'output di SHOW PROCESSLIST in un file in MySQL?

  2. Come funzionano l'input da tastiera e l'output di testo?

  3. Come posso reindirizzare o reindirizzare l'output di curl -v?

  4. Come posso reindirizzare al comando split di Linux?

  5. Come archiviare l'output del comando nell'array in Ansible?

Come trovare ed elencare in modo ricorsivo i file per data in Linux

Come trovare l'elenco dei repository installati in Linux

Come trovare tutti i caratteri installati in Linux

Come trovare l'elenco dei driver ODBC installati su Linux

Come reindirizzare l'output del programma come input

In che modo comandi come fdisk -l trovano la dimensione del settore?