Cara Menyalin Direktori dan Kontennya di Linux

Gunakan perintah ‘cp’ untuk menyalin dan menempelkan seluruh direktori dari satu tempat ke tempat lain

Apa pun Sistem Operasi yang Anda jalankan, menyalin satu file atau folder dari satu lokasi ke lokasi lain adalah tugas paling dasar yang Anda lakukan setiap hari. Pada hari yang sibuk di tempat kerja, selama tugas proyek di sekolah, atau selama pengembangan proyek yang sedang berlangsung, menyalin file dari lokasi A ke lokasi B tidak dapat dihindari.

Menyalin file atau folder biasanya dilakukan dengan menggunakan GUI. Linux menangani kebiasaan Anda untuk bekerja di terminal dengan menyediakan utilitas baris perintah yang memungkinkan Anda untuk menyalin file atau folder dari satu lokasi ke lokasi lain. Menggunakan perintah cp dengan berbagai opsi memberi Anda kebebasan untuk menyalin file dan folder dengan berbagai cara.

Biarkan saya memandu Anda melalui artikel ini di mana Anda akan belajar tentang perintah cp dan cara menyalin direktori beserta isinya.

Opsi tersedia dengan perintah cp

Ini adalah opsi yang paling umum digunakan dengan perintah cp dalam konteks menyalin direktori dan semua kontennya.

Pilihan

Keterangan

-v

mode verbose (menunjukkan kemajuan)

-r/R

menyalin direktori secara rekursif

-n

jangan menimpa file atau folder yang ada

-Saya

prompt sebelum menimpa

Salin direktori dari satu lokasi ke lokasi lain

Mari kita mulai dengan penggunaan paling dasar dari perintah cp. Kita akan menggunakan perintah ini dengan opsi -r.

Menggunakan opsi -r memastikan bahwa sub-folder dan file di dalam direktori yang Anda salin, juga akan disalin.

Sintaksis:

cp -r [lokasi_sumber] [lokasi_target]

Contoh:

Saya memiliki dua direktori di dalam direktori kerja saya saat ini yang disebut ‘proyek’ dan ‘ruang kerja’.

Dalam contoh ini, saya akan menggunakan perintah cp -r untuk menyalin direktori ‘proyek’ beserta semua isinya ke lokasi baru yaitu ‘/home/gaurav/workspace’. Ini berarti bahwa saya menyalin direktori bernama ‘proyek’ ke direktori bernama ‘ruang kerja’.

Ini adalah isi dari direktori ‘proyek’. Menggunakan perintah ls untuk menampilkan isinya.

[ dilindungi email ] :~/project$ ls -al total 288 drwxr-xr-x 6 gaurav gaurav 4096 17 Sep 18:26. drwxr-xr-x 88 gaurav gaurav 266240 17 Sep 18:24.. drwxr-xr-x 2 gaurav gaurav 4096 17 Sep 18:25 dem1, drwxr-xr-x 2 gaurav gaurav 4096 17 Sep 18:25 dem2 drwxr-xr -x 2 gaurav gaurav 4096 17 Sep 18:25 dem3 drwxr-xr-x 2 gaurav gaurav 4096 17 Sep 18:25 dem4 -rw-r–r– 1 gaurav gaurav 24 Sep 17 18:26 temp.c [email dilindungi] :~/proyek$

Sekarang, dengan menggunakan perintah cp -r kita dapat menyalin direktori ‘proyek’ ke lokasi yang diinginkan.

[ dilindungi email ] :~$ cp -r /home/gaurav/project /home/gaurav/workspace [ dilindungi email ] :~$

Keluaran:

[ dilindungi email ] :~/workspace$ ls -al total 408 drwxrwxr-x 4 gaurav gaurav 4096 17 Sep 18:27. drwxr-xr-x 88 gaurav gaurav 266240 17 Sep 18:24.. drwxrwxr-x 3 gaurav gaurav 4096 22 Mar 2018.metadata drwxr-xr-x 6 gaurav gaurav 4096 17 Sep 18:27 project -rw-r–r — 1 gaurav gaurav 1535 16 Sep 17:13 source.c [ dilindungi email ] :~/workspace$

Pada output di atas, kita dapat melihat bahwa direktori ‘proyek’ disalin dari lokasi asli ke lokasi baru ini ‘/home/gaurav/workspace’. Sekarang, mari kita buka direktori ‘proyek’ dan periksa apakah semua konten di dalamnya juga disalin.

[ dilindungi email ] :~$ cd./workspace/project [ dilindungi email ] :~/workspace/project$

Catatan: Saya telah menggunakan./ di sini alih-alih memasukkan jalur lengkap. Ini berarti bahwa itu adalah jalur direktori home saya dan ruang kerja terletak di direktori home atau working saya saat ini. Untuk penjelasan lebih lanjut tentang ini, Anda dapat melihat artikel ini.

Keluaran:

[ dilindungi email ] :~/workspace/project$ ls -al total 28 drwxr-xr-x 6 gaurav gaurav 4096 17 Sep 18:27. drwxrwxr-x 4 gaurav gaurav 4096 17 Sep 18:27.. drwxr-xr-x 2 gaurav gaurav 4096 17 Sep 18:27 dem1, drwxr-xr-x 2 gaurav gaurav 4096 17 Sep 18:27 dem2 drwxr-xr-x 2 gaurav gaurav 4096 17 Sep 18:27 dem3 drwxr-xr-x 2 gaurav gaurav 4096 17 Sep 18:27 dem4 -rw-r–r– 1 gaurav gaurav 24 Sep 18:27 temp.c [email protected] :~/ruang kerja/proyek$

Dari output ini, kita dapat menyimpulkan bahwa semua isi direktori ‘project’ juga dipindahkan ke lokasi baru.

Menyalin banyak direktori dari satu lokasi ke lokasi lain

Untuk menyalin beberapa direktori, perintah cp dapat digunakan dengan cara yang sama seperti yang disebutkan di atas. Satu-satunya perubahan di sini adalah Anda harus memasukkan beberapa jalur sumber dari beberapa direktori yang akan disalin.

Sintaksis:

cp -r [source_path_1] [source_path_n] [destination_path]

Mari kita periksa perintah ini dengan sebuah contoh.

Contoh:

[ dilindungi email ] :~/workspace$ cp -r./snap./project /home/gaurav/tomcat

Di sini, saya telah menyalin dua direktori ‘snap’ dan ‘project’ dari direktori kerja saya saat ini ke lokasi baru ‘/home/gaurav/Tomcat’.

Sekarang mari kita periksa apakah direktori disalin dengan kontennya ke lokasi baru.

[ dilindungi email ] :~/tomcat$ ls -al total 9316 drwxrwxr-x 5 gaurav gaurav 4096 19 Sep 12:16. drwxr-xr-x 88 gaurav gaurav 266240 19 Sep 12:15.. drwxr-xr-x 6 gaurav gaurav 4096 19 Sep 12:16 proyek drwxr-xr-x 7 gaurav gaurav 4096 19 Sep 12:16 snap

Memeriksa apakah konten direktori ini juga disalin.

[ dilindungi email ] :~/Tomcat/snap$ ls couchdb Eclipse htop pycharm-community vim-editor [ dilindungi email ] :~/Tomcat/snap$

[ dilindungi email ] :~/Tomcat/project$ ls dem1, dem2 dem3 dem4 temp.c [ dilindungi email ] :~/tomcat/project$

Menggunakan perintah cp dengan mode verbose

Menggunakan perintah cp dengan opsi -v mengaktifkan mode verbose. Fitur ini menampilkan file pada terminal yang sedang disalin. Nama File atau Folder yang sedang disalin akan ditampilkan di terminal Anda.

Sintaksis:

cp -vr [direktori_sumber] [jalur_lokasi_target]

Contoh:

[ dilindungi email ] :~$ cp -vr./workspace/apache./space

Dalam contoh ini, direktori ‘apache’ disalin ke folder ‘spasi’ baru. Saya telah menggunakan opsi -v dengan -r, sehingga semua konten direktori Apache juga akan disalin.

Keluaran:

‘./workspace/apache’ -> ‘./space/apache’ ‘./workspace/apache/apache-tomcat-8.0.52.tar.gz’ -> ‘./space/apache/apache-tomcat-8.0. 52.tar.gz’ [ dilindungi email ] :~$

Output menampilkan direktori yang sedang disalin. Proses yang sama dapat dilakukan jika menyalin banyak file.

Hindari menimpa saat menggunakan perintah cp

Terkadang saat menggunakan perintah cp untuk menyalin beberapa file atau folder, Anda mungkin akan menimpa file yang sudah disalin ke lokasi baru. Untuk menghindari ini, disarankan untuk menggunakan opsi -i dengan perintah cp. Ini akan meminta Anda sebelum menimpa file atau folder apa pun.

Sintaksis:

cp -ri [jalur_direktori_sumber] [jalur_lokasi_target]

Catatan: Di sini, dalam sintaks saya juga menggunakan opsi -r. Ini akan menyalin konten direktori juga. Ini juga akan, memeriksa apakah salah satu dari sub-folder dan file di dalam direktori ini sedang ditimpa.

Contoh:

[ dilindungi email ] :~$ cp -ri./workspace/snap./Tomcat cp: menimpa ‘./Tomcat/snap/pycharm-community/current’?

Di sini, saya mencoba menyalin direktori bernama ‘snap’ ke lokasi baru. Tapi nama direktori ‘snap’ sudah ada di lokasi baru. Oleh karena itu, saya akan diminta oleh terminal sebelum menimpa direktori snap yang ada.

Anda dapat mengetik ‘ Ya ‘ atau ‘ Tidak ‘ sebagai jawaban atas permintaan ini.

Jika Anda tidak menggunakan opsi -i, direktori yang ada akan ditimpa oleh direktori baru.

Lewati penimpaan file dan direktori dengan perintah cp

Kita dapat menggunakan opsi -n untuk secara langsung menginstruksikan terminal untuk tidak pernah menimpa dan hanya melewatkan file dan direktori yang sama saat menggunakan perintah cp.

Sintaksis:

cp -nr [jalur_direktori_sumber] [jalur_lokasi_target]

Dengan menggunakan perintah ini, Anda dapat yakin bahwa file dan folder Anda tidak akan ditimpa.

Contoh:

[ dilindungi email ] :~$ cp -ri./workspace/snap./tomcat [ dilindungi email ] :~$

Di sini, direktori ‘snap’ sudah ada di lokasi target. Oleh karena itu, menggunakan opsi -n akan memastikan untuk tidak menimpa direktori ini.

Tidak seperti opsi -i, di sini Anda tidak akan ditanya tentang penimpaan.

Kesimpulan

Menggunakan perintah cp untuk menyalin direktori dan kontennya di Linux adalah proses yang mudah. Untuk mempelajari lebih lanjut tentang perintah cp dengan opsi lain yang tersedia, Anda dapat memeriksa halaman manual dengan mengetikkan man cp di terminal Linux Anda.

Related Posts