GNU/Linux >> Belajar Linux >  >> Linux

Saya ingin mem-pipe output dari find ke dalam daftar input scp, bagaimana caranya?

find . -name "*" -exec scp '{}' [email protected]:/directory ';'

Biasanya Saya akan 'tar' semua file menjadi satu gumpalan besar dan memanggil 'scp' sekali saja. Sesuatu seperti ini:

tar czfv - file1 file2 dir1 dir2 | ssh [email protected]/ tar xvzf - -C directory
  • Orang bisa bermain-main dengan parameter --exclude=atau --include=dari tar.
  • Opsi lainnya adalah menggunakan rsync.

Anda dapat melakukannya hanya dengan satu perintah scp .

  • untuk versi scp yang lebih baru :
scp `find <path> -name <expression>` [email protected]:<path_where_to_copy>
  • untuk versi lama:
scp --exec=`find <path> -name <expression>` [email protected]:<path_where_to_copy>

Pastikan untuk mengenkapsulasi find perintah di antara backticks ` dan bukan tanda kutip tunggal ' .


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

Linux
  1. Bagaimana cara menyalurkan /dev/urandom ke output suara linux?

  2. Cara mem-pipe hasil 'find' ke mv di Linux

  3. Cara menemukan daftar driver ODBC yang diinstal di Linux

  1. Cara mengarahkan output program sebagai inputnya

  2. Bagaimana cara mendaftar folder menggunakan perintah bash?

  3. Bagaimana cara menggabungkan dua pipa bernama ke aliran input tunggal di linux

  1. Cara Mengetahui Daftar Semua Port Terbuka di Linux

  2. Bagaimana cara Menyimpan output SHOW PROCESSLIST ke dalam file di MySQL?

  3. Bagaimana Cara Kerja Input Keyboard Dan Output Teks?