Cara yang lebih baik untuk menyalin beberapa direktori ke direktori baru

33

Apakah ada cara yang lebih baik pada baris perintah untuk secara esensial mencapai yang berikut tetapi dengan satu perintah

cp -r css/ ar/
cp -r images/ ar/
cp -r js/ ar/
cp -r backups/ ar/

Saya baru saja merangkai mereka dengan titik koma.

Jeff Schaller
sumber

Jawaban:

63

Menyalin folder ke folder lain (folder dalam folder):

cp -r css images js backups ar/

Catatan: ini berbeda dengan menyalin konten sendiri (isi folder di folder):

cp -r css/ images/ js/ backups/ ar/
porton
sumber
4
garis miring membuat perbedaan! selalu dicurigai, tidak pernah tahu
Peter Perháč
2
garis miring tidak membuat perbedaan dalam pengujian saya. cptidak rsync. namun cp -r css/. images/. ar/demikian menyalin konten tanpa direktori. versi cp saya adalah "cp (GNU coreutils) 8.29".
sourcejedi
1

Jawabannya sederhana, dan berfungsi pada Debian "ini sebenarnya bagaimana saya melakukannya" (diuji) katakanlah Anda berada di / etc dan ingin menyalin beberapa file dan folder sebelum Anda memformat hard disk Anda (untuk beberapa alasan) Anda ketikkan yang berikut ini dan semua yang disebutkan di bawah ini akan disalin ke / mybackups / folder:

sudo cp -r -a apt/ bash.bashrc environment hosts init.d/ init/ nginx/ proxychains.conf sudoers sysctl.d/ profile.d/ grub.d/ /boot/grub/ /opt/ /root/ /var/www/ /mybackups/

seperti yang Anda lihat di atas, saya mencoba menyalin folder dari luar dll juga dengan menunjuk ke lokasi seperti / boot / grub / atau / opt / dan berhasil!

M03
sumber
1
Saya percaya -r tidak diperlukan, karena -a sudah berisi (via: man).
David Potočnik
-2

Anda tidak dapat menyalin dua direktori menggunakan cpperintah saja.

Anda dapat menyalin secara rekursif menggunakan -ropsi.

Sebagai contoh:

cp -r <source> <destination> 
suman
sumber