Android

Bagaimana untuk menyalin fail dan direktori di linux

MengCopy Folder dan File Melalui Terminal Linux

MengCopy Folder dan File Melalui Terminal Linux

Isi kandungan:

Anonim

Menyalin fail dan direktori adalah salah satu tugas yang paling biasa yang akan anda lakukan apabila bekerja pada baris arahan. Di Linux, terdapat beberapa perintah untuk menyalin fail dengan cp dan rsync sebagai alat yang paling banyak digunakan.

Ia adalah amalan biasa untuk menggunakan perintah cp semasa menyalin fail dan perintah rsync semasa menyalin direktori.

Untuk dapat menyalin fail dan direktori, anda mesti mempunyai sekurang-kurangnya membaca kebenaran pada fail sumber dan menulis kebenaran pada direktori destinasi.

Menyalin Fail dengan Perintah cp

Pada sistem operasi Linux dan Unix, arahan cp digunakan untuk menyalin fail dan direktori.

Kes penggunaan yang paling mudah ialah menyalin fail dalam direktori kerja semasa. Sebagai contoh, untuk menyalin fail bernama file.txt ke fail bernama file_backup.txt dalam direktori semasa, anda akan menjalankan arahan berikut:

cp file.txt file_backup.txt

Jika fail destinasi wujud, ia akan ditimpa semula. Untuk mendapatkan prompt pengesahan sebelum menindih fail, gunakan pilihan -i .

cp -i file.txt file_backup.txt

Secara lalai, apabila menggunakan perintah cp untuk menyalin fail, fail baru akan dimiliki oleh pengguna yang melaksanakan perintah tersebut. Gunakan pilihan -p untuk mengekalkan mod fail, pemilikan dan cap waktu:

cp -p file.txt file_backup.txt

Pilihan lain yang boleh berguna adalah -v . Apabila menggunakan pilihan ini, arahan mencetak apa yang sedang dilakukan:

cp -v file.txt file_backup.txt

'file.txt' -> 'file_backup.txt'

Salin fail ke direktori

Untuk menyalin fail ke direktori, tentukan mutlak atau laluan relatif ke direktori. Jika direktori destinasi diabaikan, fail disalin ke direktori semasa.

Dalam contoh berikut kita menyalin fail file.txt ke direktori /backup :

cp file.txt /backup

Apabila hanya menentukan nama direktori sebagai destinasi, fail yang disalin akan mempunyai nama yang sama dengan fail asal.

cp file.txt /backup/new_file.txt

Arahan di atas akan menyalin fail ke direktori yang ditentukan sebagai new_file.txt .

Salin berbilang fail

Untuk menyalin banyak fail dan direktori dengan segera nyatakan nama-nama fail dan direktori sumber diikuti dengan direktori destinasi sebagai hujah terakhir:

cp file.txt dir file1.txt file2.txt dir1

Apabila menyalin pelbagai fail, destinasi mesti menjadi direktori.

Perintah cp juga membolehkan anda menggunakan padanan corak. Sebagai contoh, untuk menyalin semua fail .png dari direktori semasa ke direktori /backup , anda akan menggunakan:

cp *.png /backup

Menyalin Direktori dengan perintah cp

Untuk menyalin direktori, termasuk semua fail dan subdirektori, gunakan pilihan -R atau -r . Dalam contoh berikut kita menyalin direktori Pictures ke Pictures_backup :

cp -R Pictures Pictures_backup

Perintah di atas akan mencipta direktori destinasi dan menyalin secara serentak semua fail dan subdirektori dari sumber ke direktori destinasi.

Jika direktori destinasi sudah ada, direktori sumber itu sendiri dan semua kandungannya akan disalin ke direktori destinasi. Untuk menyalin sahaja fail dan subdirektori tetapi bukan direktori target menggunakan pilihan -T :

cp -RT Pictures Pictures_backup

Pilihan yang digunakan semasa menyalin fail juga boleh digunakan semasa menyalin direktori. Perbezaan utama ialah apabila menyalin direktori, anda perlu menggunakan pilihan -R .

Menyalin Fail dan Direktori dengan Perintah rsync

rsync adalah arahan baris cepat dan serba boleh yang menyegerakkan fail dan direktori antara dua lokasi. Ia boleh digunakan untuk menyalin fail ke lokasi tempatan dan jauh.

rsync termasuk beberapa pilihan yang mengawal setiap aspek tingkah lakunya. Pilihan yang paling berguna ialah-yang menyalin direktori secara rekursif, memindahkan peranti khas dan blok, mengekalkan pautan simbolik, masa pengubahsuaian, kumpulan, pemilikan, dan kebenaran.

Untuk menyalin satu fail dari satu ke lokasi lain, anda akan menjalankan perintah berikut:

rsync -a file.txt file_backup.txt

Jika fail destinasi wujud, rsync akan menimpa.

Perintah yang sama boleh digunakan untuk menyalin direktori:

rsync -a /var/www/public_html/ /var/www/public_html_backup/

rsync mengancam direktori sumber yang berakhir dengan garis miring / berbeza. Jika anda menambah garis miring di direktori sumber, arahan akan menyalin hanya kandungan direktori sumber ke direktori destinasi. Apabila slash trailing diabaikan, rsync akan menyalin direktori sumber dalam direktori destinasi. Pilihan yang paling selamat adalah selalu memasukkan garis miring / di kedua tujuan dan sumber.

Untuk mengetahui lebih lanjut mengenai rsync periksa artikel berikut:

Kesimpulannya

Dalam panduan ini, kami telah menunjukkan kepada anda cara menyalin fail dan direktori dalam sistem Linux dan Unix yang menggunakan utiliti cp dan rsync .

cp rsync terminal