Tujuan saya adalah hanya menyalin semua file dari ~ / local_dir ke [email protected] / var / www / html / target_dir menggunakan scp dan jangan membuat kategori local_dir di local_dir.
/var/www/html/target_dir/files..
tapi tidak
/var/www/html/target_dir/local_dir/files..
saat menggunakan parameter -r
scp * [email protected]:/var/www/html/target_dir
melakukan apa yang Anda inginkan? Jika demikian, harap edit dengan lebih detail tentang apa yang Anda coba lakukan & telah coba sejauh ini.Jawaban:
scp memiliki argumen -r. Jadi, coba gunakan:
Argumen -r bekerja sama seperti argumen -r di cp, itu akan mentransfer seluruh folder Anda dan semua file dan subdirektori di dalamnya.
sumber
local_dir
direktori di / var / www / html / target_dir tujuan saya adalah menyalin file saja.$ scp -r ~/local_dir [email protected]:/var/www/html/
Kemudian ganti nama direktori baru jika perlu.$ scp -r ~/local_dir/* [email protected]:/var/www/html/target_dir
Apapun yang mengapungkan kapal Anda.*
ke titik.
dan Anda akan menyalin isi direktori (termasuk file titik apa pun) tanpa menyalin direktori itu sendiri.scp -pr ~/local_dir/. [email protected]:/path/to/target_dir
Jika tujuan Anda adalah untuk mentransfer semua file dari
local_dir
satu*
wildcard melakukan trik:The
-r
pilihan berarti "rekursif", sehingga Anda harus menulis ketika Anda mencoba untuk mentransfer seluruh direktori atau beberapa direktori.Dari
man scp
:Jadi jika Anda memiliki sub-direktori di dalam
local_dir
, contoh terakhir hanya akan mentransfer file, tetapi jika Anda mengatur-r
opsi, itu akan mentransfer file dan direktori.sumber
Menambahkan
/.
ke direktori sumber Anda akan mentransfer isinya alih-alih direktori itu sendiri. Berbeda dengan solusi wildcard, ini akan mencakup file tersembunyi juga.Penghargaan untuk solusi ini berlaku untuk roaima, tetapi saya pikir itu harus diposting sebagai jawaban aktual, bukan hanya komentar.
sumber
Ikuti langkah ini:
Salin direktori
local_dir
dengan semua sub-direktori:hanya menyalin isi
local_dir
dan bukan direktorilocal_dir
itu sendiri:Jangan gunakan:
scp -r ~/local_dir/. [email protected] /var/www/html/target_dir
karena melempar kesalahan (baru diuji dan menerima kesalahan berikut):sumber