GNU/Linux >> Belajar Linux >  >> Linux

Cara Menggunakan perintah cp untuk Menyalin File dan Direktori

Menyalin file atau direktori adalah salah satu aktivitas dasar di setiap sistem operasi. Aktivitas backup pada dasarnya adalah membuat salinan file dan direktori. Pada sistem Linux, kita dapat menggunakan perintah cp untuk melakukannya.

Seperti yang kami sebutkan di atas, perintah cp adalah perintah untuk membuat salinan file dan direktori. Berikut adalah beberapa contoh perintah cp yang mungkin berguna dalam operasi sehari-hari

1) perintah cp

Ini adalah penggunaan cp yang sangat mendasar. Untuk menyalin nama file myfile.txt dari satu lokasi ke lokasi lain, kita dapat mengetik seperti ini :

$ cp myfile.txt /home/pungki/office

Jika kita tidak mengetikkan jalur absolut, itu berarti kita sedang menyalin file di direktori saat ini. Dari contoh di atas, myfile.txt terletak di /home/pungki/Documents . Kita tidak perlu mengetik /home/pungki/Documents/myfile.txt untuk menyalin myfile.txt jika kita berada di /home/pungki/Documents itu direktori. Saat /rumah/pungki/kantor adalah folder tempat file akan disalin.

2) Salin beberapa file sekaligus

Untuk menyalin banyak file sekaligus, kita cukup meletakkan file di belakang perintah salin yang dipisahkan oleh spasi. Ini contohnya :

$ cp file_1.txt file_2.txt file_3.txt /home/pungki/office

3) Salin direktori

Menyalin direktori sedikit rumit. Anda perlu menambahkan -r atau -R pilihan untuk melakukannya. Opsi -r atau -R berarti rekursif. Opsi ini adalah suatu keharusan apakah direktori tersebut kosong atau tidak. Ini contohnya :

$ cp -r directory_1 /home/pungki/office

Satu hal lagi yang perlu diperhatikan adalah Anda harus menghapus garis miring di belakang nama direktori. Jika tidak, Anda akan mendapatkan pesan kesalahan seperti cp :menghilangkan direktori ‘directory_1/’

Jika Anda mendapatkan kesalahan itu, direktori tidak akan disalin ke folder tujuan.

4) Buat tautan keras ke file alih-alih menyalinnya

Menyalin file berarti Anda harus memiliki ruang penyimpanan untuk menyimpan file yang disalin. Terkadang karena alasan apa pun, Anda mungkin ingin membuat "pintasan" atau tautan ke file alih-alih menyalinnya. Untuk melakukan ini, kita dapat menggunakan -l pilihan.

$ cp -l file_4.txt /home/pungki/office

Dari tangkapan layar di atas, kami melihat bahwa tautan keras file_4.txt telah disalin ke /home/pungki/office/file_4.txt . Itu ditandai dengan inode yang sama, 835386 . Namun perlu diketahui, hardlink tidak dapat dibuat ke dalam direktori. Mari kita lihat contohnya di bawah ini.

Direktori asli_1 memiliki nomor inode 278230

File_5.txt asli memiliki nomor inode 279231

Lakukan perintah cp di direktori_1

Direktori yang disalin_1 memiliki nomor inode 274800

File_5.txt yang disalin memiliki nomor inode 279231. Sama dengan file aslinya

5) Buat tautan simbolis ke file

Ada jenis tautan lain yang disebut tautan lunak atau tautan simbolik . Kami menggunakan -s pilihan untuk melakukan ini. Berikut contoh perintahnya.

$ cp -s /home/pungki/Documents/file_6.txt file_6.txt

Membuat symlink hanya dapat dilakukan di direktori saat ini. Pada tangkapan layar di atas, kami ingin membuat tautan simbolis dari direktori sumber - /home/pungki/Documents/file_6.txt ke /home/pungki/office . Tetapi untuk membuat tautan simbolis, Saya harus masuk ke dalam /home/pungki/office sebagai folder tujuan. Setelah saya berhasil berada di sana, saya dapat menjalankan cp -s perintah di atas.

Kemudian ketika Anda membuat daftar file dengan detail, Anda akan melihat bahwa /home/pungki/office/file_6.txt menunjuk ke file asli. Ini ditandai dengan tanda panah setelah nama file.

6) Salin tanpa mengikuti tautan simbolis di Sumber

Untuk melakukan ini, kita dapat menggunakan -P pilihan. Ketika perintah cp menemukan file dengan tautan simbolik, itu akan menyalin apa adanya. Lihatlah contoh di bawah ini.

$ cp -P file_6.txt ./movie

Seperti yang Anda lihat, perintah cp akan menyalin file_6.txt dengan adanya. Jenis file masih berupa tautan simbolis.

7) Salin dengan tautan simbolis berikut di Sumber

Sekarang kita bisa melakukannya dengan -L pilihan. Pada dasarnya, ini kebalikannya dari opsi -P di atas. Ini contohnya.

$ cp -L file_6.txt ./movie

Dengan opsi ini, file yang disalin adalah file yang sama dengan file sumber file_6.txt . Hal ini diketahui dari ukuran file. File yang disalin memiliki 50 byte ukuran file sedangkan file_6.txt sebagai tautan simbolis memiliki 33 byte ukuran file.

8) Arsipkan file

Saat kita akan menyalin direktori, kita akan menggunakan -r atau -R pilihan. Tapi kita juga bisa menggunakan -a pilihan untuk mengarsipkan file. Ini akan membuat salinan persis file dan direktori termasuk tautan simbolik jika ada. Ini contohnya :

$ cp -a directory_1/ /home/pungki/office

Perintah di atas akan menyalin direktori bernama directory_1 ke dalam folder /home/pungki/office . Seperti yang Anda lihat, file_6.txt masih disalin sebagai tautan simbolis.

9) Jelaskan apa yang sedang dilakukan

Secara default, ketika aktivitas menyalin berhasil, kita akan melihat prompt perintah lagi. Jika Anda ingin tahu apa yang terjadi selama menyalin file, kita dapat menggunakan -v pilihan.

$ cp -v *.txt /home/pungki/office

Saat kami menyalin semua file txt di direktori saat ini ke /home/pungki/office/ direktori, -v pilihan akan menunjukkan apa yang sedang dilakukan. Informasi tambahan ini akan membuat kami lebih yakin tentang aktivitas penyalinan.

10) Salin hanya jika file sumber lebih baru

Untuk melakukan ini, kita dapat menggunakan -u pilihan. Lihat contoh di bawah ini.

$ cp -vu *.txt /home/pungki/office

Pada awalnya, kita melihat file_1.txt memiliki 0 byte ukuran file. Kemudian kita edit menggunakan vi, tambahkan beberapa konten dan simpan. Selanjutnya, kita melihat ukuran file telah berubah menjadi 36 byte.

Sementara itu, di /home/pungki/office direktori, kami sudah memiliki semuanya *.txt file. Saat kami menggunakan -u opsi, dikombinasikan dengan -v opsi untuk melihat apa yang sedang dilakukan, perintah cp hanya akan menyalin file yang lebih baru dari direktori tujuan. Hasilnya, kita melihat bahwa hanya file_1.txt yang disalin ke direktori /home/pungki/office .

11) Gunakan mode interaktif

Mode interaktif akan menanyakan apakah folder tujuan sudah memiliki file. Untuk mengaktifkan mode interaktif, gunakan -i pilihan.

$ cp -ir directory_1/ /home/pungki/office/

12) Buat tanggal cadangan dari setiap file yang disalin

Ketika folder tujuan sudah memiliki file tersebut, secara default perintah cp akan menimpa file yang sama di direktori tujuan. Menggunakan --backup pilihan, perintah cp akan membuat cadangan dari setiap file tujuan yang ada. ../kantor akan merujuk ke /home/pungki/office . Ini contohnya :

$ cp --backup=simple -v *.txt ../office

Seperti yang bisa kita lihat, --backup=simple opsi akan membuat file cadangan yang ditandai dengan tanda tilde (~) di akhir file. --cadangan option memiliki beberapa Control, yaitu :

  • tidak ada, nonaktif : tidak pernah membuat cadangan (meskipun --backup diberikan)
  • bernomor, t : buat cadangan bernomor
  • sudah ada, nihil : bernomor jika ada cadangan bernomor, sebaliknya sederhana
  • sederhana, tidak pernah : selalu buat cadangan sederhana

13) Hanya menyalin atribut file

Perintah Cp juga memberi kita --attributes-only pilihan. Seperti yang bisa kita tebak dari namanya, opsi ini hanya akan menyalin nama file dan atributnya tanpa menyalin data apa pun. Ini contohnya.

$ cp --attributes-only file_6.txt -v ../office

Dari tangkapan layar di atas, file asli_6.txt file memiliki 50 byte ukuran file. Menggunakan --attributes-only opsi, file yang disalin akan memiliki 0 byte ukuran file. Ini karena konten file tidak disalin.

14) Salin paksa

Menggunakan -f opsi akan memaksa aktivitas penyalinan. Jika file tujuan tidak dapat dibuka, maka -f akan mencoba lagi.

$ cp -f *.txt -v ../office

15) Hapus tujuan sebelum menyalin

Untuk melakukannya, kita dapat menggunakan --remove-destination pilihan. Opsi ini kontras dengan opsi -f di atas. Jika perintah cp menemukan nama file yang sama di folder tujuan, perintah cp akan menghapus file tujuan terlebih dahulu, salin yang baru. Ini contohnya.

$ cp --remove-destination *.txt -v ../office

Perintah Cp adalah salah satu perintah dasar Linux. Bagi yang ingin belajar Linux, pasti tahu perintah ini. Tentu saja, Anda dapat mengetik man cp atau cp --help dari konsol Anda untuk menampilkan halaman manualnya guna menjelajahi lebih detail.

Baca Juga:

  • Garis Besar Singkat 106 Perintah Linux dengan Contoh

Linux
  1. Cara Zip File dan Direktori di Linux (dengan Contoh)

  2. Salin file &direktori di Linux

  3. Bagaimana cara menggunakan perintah Rsync di linux?

  1. Cara Menyalin File dan Direktori di Linux

  2. Cara Menggunakan rsync untuk Mengecualikan File dan Direktori dalam Transfer Data

  3. Bagaimana Cara Menyalin File di Linux dan Unix? Contoh Perintah 10 cp

  1. Cara Menghapus Direktori dan File Menggunakan Linux

  2. Temukan Perintah di Linux (Temukan File dan Direktori)

  3. Cara Menghapus File dan Direktori Menggunakan Baris Perintah Linux