Trong thế giới Linux, có một số lệnh Linux Terminal thiết yếu có thể giúp công việc của bạn trở nên dễ dàng. Một lệnh như vậy là lệnh cp, giúp bạn sao chép nhanh chóng các tệp và thư mục trên hệ thống Linux của mình. Trong bài viết này, chúng tôi sẽ thảo luận về một số ví dụ về cách sử dụng lệnh cp trong Linux.
Lệnh cp trong Linux: Cú pháp và Tùy chọn
Trong Linux, cp là viết tắt của “copy” và được sử dụng để sao chép cả tệp và thư mục, khiến nó trở nên cần thiết tuyệt đối cho việc quản lý tệp. Lệnh cp có thể được sử dụng bởi mọi loại người dùng nhờ cú pháp đơn giản của nó:
cp <options> <source_file> <destination_file>
Một số tùy chọn phổ biến để ghép nối với lệnh cp trong Linux là:
-Tôi | Nhắc nhở người dùng trước khi thao tác sao chép diễn ra |
-b | Tạo bản sao lưu của Destination_file trong cùng thư mục với một tên khác |
-f | Được sử dụng để buộc tạo một bản sao của tệp nguồn khi nó không có quyền ghi |
-r | Sao chép đệ quy một thư mục và nội dung của nó |
-l | Tạo liên kết cứng thay vì sao chép tập tin |
-S | Tạo liên kết mềm thay vì sao chép tập tin |
-u | Chỉ sao chép tệp nếu nguồn mới hơn đích |
-v | Hiển thị thông tin về hoạt động hiện tại đang diễn ra |
Ví dụ hay nhất về lệnh cp trong Linux
Bây giờ bạn đã biết cú pháp của lệnh cp, hãy xem một số ví dụ về cách sử dụng lệnh này để sao chép các tập tin và thư mục trong Linux.
1. Sao chép một tệp vào đích
Đây là trường hợp sử dụng phổ biến nhất của lệnh cp, tức là để tạo một bản sao của một tệp. Cú pháp để tạo bản sao của một tệp bằng lệnh cp như sau:
cp <options> <source_file> <destination_directory>
Ví dụ: để tạo một bản sao của tệp “test.txt” sang “destination_directory/”, hãy sử dụng lệnh cp như sau:
cp -v test.txt dest_directory/
2. Sao chép nhiều tệp vào đích
Giống như bạn có thể tạo một bản sao của một tệp, bạn thậm chí có thể sử dụng lệnh cp để sao chép nhiều tệp vào thư mục đích:
cp <options> <file_1> <file_2> <file_3> <destination_directory>
Ví dụ để sao chép các file file1.txt, file2.txt, file3.txt vào thư mục “dest_directory”:
cp file1.txt file2.txt file3.txt dest_directory/
3. Sao chép một thư mục vào một thư mục đích
Với cờ -r, bạn có thể sử dụng lệnh cp để sao chép toàn bộ thư mục sang đích mới:
cp <options> <source_directory> <destination_directory>
Ví dụ: để sao chép thư mục “source_dir” với nội dung của nó:
cp -v -r source_dir/ dest_directory
4. Sao chép nhiều thư mục vào một thư mục đích
Giống như bạn sao chép nhiều tập tin, cũng giống như cách bạn có thể sao chép nhiều thư mục. Cú pháp sao chép nhiều thư mục:
cp -r <option> <directory1> <directory2> <directory3> <destination_directory>
Ví dụ:
cp -r -v dir1/ dir2/ dir3/ dest_directory/
5. Giữ quyền truy cập tệp cho tệp đã sao chép
Thông thường khi bạn sao chép một tệp bằng lệnh cp, tệp được sao chép sẽ có các quyền đối với tệp theo các quyền mặc định được đặt cho mọi tệp mới được tạo. Để duy trì quyền của tệp gốc, hãy sử dụng cờ -p:
cp <options> -p <source_file> <destination_file>
Ví dụ: để duy trì quyền của “test.txt”, hãy sử dụng lệnh cp như:
cp -p -v test.txt file.txt
6. Tránh ghi đè tệp đích
Theo mặc định, lệnh cp ghi đè bất kỳ tệp nào có sẵn ở đích có cùng tên. Để tránh ghi đè tên tệp, hãy sử dụng -n:
cp <options> -n <source_file> <destination_file>
Ví dụ: để tránh ghi đè tệp “test.txt” trong khi sao chép:
cp -v -n test.txt file.txt
7. Buộc sao chép tệp nguồn
Đôi khi tệp nguồn không có quyền ghi để tạo bản sao. Trong trường hợp như vậy, bạn có thể sử dụng cờ -f để buộc tạo một bản sao của tệp nguồn:
cp <option> -f <source_file> <destination_file>
Ví dụ:
cp -f -v file1.txt file2.txt
8. Tạo liên kết thay vì sao chép tệp
Đôi khi, bạn có thể cần tạo một liên kết cứng hoặc liên kết tượng trưng của tệp nguồn thay vì thực sự sao chép tệp. Để tạo liên kết cứng, hãy sử dụng cờ -l và để tạo liên kết tượng trưng, hãy sử dụng cờ -s:
cp <options> -l <source_file> <destination_file>
HOẶC
cp <options> -s <source_file> <destination_file>
Ví dụ: để tạo một liên kết tượng trưng cho tệp “test.txt”:
cp -v -s test.txt test1.txt