Bài viết dưới đây sẽ hướng dẫn cách sử dụng lệnh cp để sao chép file, thư mục và một số tùy chọn hữu ích giúp thao tác nhanh chóng, chính xác hơn.
1. Lệnh copy file và thư mục trong Linux là gì?
Trong Linux, lệnh cp (Copy) được sử dụng để sao chép file hoặc thư mục từ vị trí này sang vị trí khác.
Cú pháp cơ bản:
cp [tùy_chọn] nguồn đích
Trong đó:
Ví dụ, sao chép file test.txt sang thư mục /home/user/backup:
cp test.txt /home/user/backup/
Sau khi thực hiện, một bản sao của file sẽ được tạo trong thư mục đích.
2. Hướng dẫn copy file trong Linux
2.1. Sao chép một file
Để sao chép một file sang thư mục khác, sử dụng lệnh:
cp file.txt /home/user/backup/
Lệnh trên sẽ sao chép file.txt vào thư mục /home/user/backup/.
Nếu muốn sao chép file và đổi tên ngay tại vị trí đích, sử dụng:
cp file.txt /home/user/backup/file-moi.txt
2.2. Sao chép nhiều file cùng lúc
Linux cho phép sao chép nhiều file trong cùng một lệnh:
cp file1.txt file2.txt file3.txt /home/user/backup/
Tất cả các file được chỉ định sẽ được sao chép vào thư mục đích.
2.3. Sao chép file và giữ nguyên thuộc tính
Nếu muốn giữ lại các thuộc tính như quyền truy cập, thời gian chỉnh sửa và thông tin liên quan, có thể sử dụng tùy chọn -p:
cp -p file.txt /home/user/backup/
Tùy chọn này hữu ích khi sao lưu file cấu hình hoặc dữ liệu cần giữ nguyên thông tin ban đầu.
3. Hướng dẫn copy thư mục trong Linux
Khác với file thông thường, khi sao chép thư mục cần sử dụng tùy chọn -r hoặc -R để sao chép đệ quy toàn bộ nội dung bên trong.
3.1. Sao chép một thư mục
Cú pháp:
cp -r thu_muc_nguon thu_muc_dich
Ví dụ:
cp -r /home/user/website /home/user/backup/
Lệnh trên sẽ sao chép thư mục website cùng toàn bộ file và thư mục con vào vị trí backup.
3.2. Sao chép thư mục và đổi tên
Bạn có thể đổi tên thư mục ngay trong quá trình sao chép:
cp -r website website_backup
Kết quả là tạo một thư mục mới có tên website_backup với nội dung được sao chép từ thư mục website.
3.3. Sao chép nhiều thư mục cùng lúc
Có thể sao chép nhiều thư mục vào cùng một vị trí đích:
cp -r folder1 folder2 folder3 /home/user/backup/
Các thư mục sẽ được đưa vào thư mục /home/user/backup/.
4. Các tùy chọn thường dùng của lệnh cp
Lệnh cp hỗ trợ nhiều tùy chọn giúp kiểm soát quá trình sao chép.
|
Tùy chọn |
Chức năng |
|
-r, -R |
Sao chép thư mục và toàn bộ nội dung bên trong |
|
-i |
Hỏi xác nhận trước khi ghi đè file |
|
-f |
Buộc sao chép, ghi đè file đích khi cần |
|
-v |
Hiển thị chi tiết các file đang được sao chép |
|
-p |
Giữ lại các thuộc tính cơ bản của file |
|
-a |
Sao chép ở chế độ lưu trữ, cố gắng giữ cấu trúc và thuộc tính |
|
-u |
Chỉ sao chép khi file nguồn mới hơn hoặc file đích chưa tồn tại |
Ví dụ kết hợp nhiều tùy chọn:
cp -av /home/user/website /home/user/backup/
Lệnh này sao chép thư mục theo chế độ lưu trữ và hiển thị quá trình thực hiện.
5. Một số ví dụ copy file và thư mục thực tế
Dưới đây là các tình huống thường gặp khi quản trị máy chủ Linux.
Sao chép file cấu hình:
cp /etc/nginx/nginx.conf /home/user/backup/
Sao chép toàn bộ website để sao lưu:
cp -a /var/www/html/website /backup/
Sao chép tất cả file có phần mở rộng .txt:
cp *.txt /home/user/backup/
Sao chép file và hiển thị quá trình thực hiện:
cp -v source.txt destination.txt
Sao chép thư mục và hỏi trước khi ghi đè:
cp -ri website /home/user/backup/
Khi thao tác trên máy chủ đang hoạt động, bạn nên kiểm tra kỹ đường dẫn nguồn và đích để tránh ghi đè hoặc tạo bản sao không đúng vị trí.
6. Những lưu ý khi sử dụng lệnh cp trong Linux
Để hạn chế sai sót khi sao chép dữ liệu, cần chú ý một số điểm sau:
Ví dụ:
sudo cp -a /var/www/html/website /backup/
Lưu ý rằng sudo chỉ nên được sử dụng khi thực sự cần thiết và bạn có quyền quản trị máy chủ.
Kết luận
Lệnh cp là công cụ đơn giản nhưng rất hữu ích khi quản lý file và thư mục trong Linux. Chỉ cần nắm được cú pháp cơ bản cùng các tùy chọn như -r, -a, -i và -v, bạn có thể thực hiện hầu hết thao tác sao chép dữ liệu thường gặp.
Đối với quản trị viên máy chủ, việc sử dụng đúng lệnh và kiểm tra kỹ đường dẫn trước khi sao chép sẽ giúp hạn chế mất dữ liệu, tránh ghi đè nhầm và hỗ trợ quá trình sao lưu website hiệu quả hơn.