Lệnh copy toàn bộ thư mục trong linux

Cần sao chép các file và folder trong Linux? Tiết kiệm thời gian bằng cách sử dụng lệnh cp để di chuyển dữ liệu trong terminal.

  • Cách thiết lập máy chủ Git riêng trên Linux
  • Dựa vào tiêu chí nào để lựa chọn laptop phù hợp với lập trình viên?
  • Cách sử dụng lệnh để xóa thư mục/tệp trong Linux
  • 7 cách nhận trợ giúp về dòng lệnh trên Linux
  • 34 lệnh cơ bản của Linux mà mọi người dùng nên biết (phần 1)

  • Lệnh cp trong Linux là gì?
  • Cú pháp cp
  • Sao chép tập tin bằng cp
  • Sử dụng cp để sao chép folder/thư mục
  • Những tùy chọn cp hữu ích
  • Kết luận

Lệnh copy toàn bộ thư mục trong linux

Việc sao chép các file và thư mục (directory) có thể nhanh chóng và không tốn thời gian trong Linux nếu bạn sử dụng lệnh cp. Hãy cùng học cách sử dụng cp và tận dụng các tùy chọn tiện dụng của nó để giúp các công việc sao chép của bạn an toàn hơn.

Lệnh cp trong Linux là gì?

Là một tiện ích dòng lệnh cho các hệ thống Unix và Linux có khả năng sao chép cả file và thư mục, cp có sẵn trên hầu hết mọi bản phân phối Linux. Bạn sẽ thấy nó được nhắc đến thường xuyên trong các hướng dẫn để hoàn thành các tác vụ quản lý file trong Linux.

Cú pháp của nó rất đơn giản và dễ sử dụng nhất nếu bạn mở terminal trong (hoặc cd tới) thư mục chứa các file bạn muốn sao chép.

Cú pháp cp

Cú pháp của cp rất giống với lệnh mv, yêu cầu bạn chỉ cần chỉ định nguồn hoặc các nguồn (file hoặc thư mục bạn muốn sao chép) và đích (thư mục hoặc tên file cho các bản sao).

cp [options] >source>... >destination>

Lệnh của bạn có thể chứa nhiều nguồn, nhưng chỉ có thể có một đích. Đích đến có thể là một thư mục khác, một tên file mới hoặc cả hai.

Sao chép tập tin bằng cp

Nếu bạn muốn tạo một bản sao của một file trong cùng một thư mục, nhưng có tên khác, hãy sử dụng lệnh như sau:

cp file.txt newfile.txt

Lệnh copy toàn bộ thư mục trong linux

Để làm điều tương tự, nhưng trong một thư mục con, hãy sử dụng một lệnh như sau:

cp file.txt Backup/newfile.txt

Lệnh trên giả sử bạn có một thư mục tên là Backup trong thư mục hiện tại của bạn.

Nếu bạn không muốn đặt tên mới cho file, chỉ cần chỉ định thư mục chứ không phải tên file trong đích:

cp file.txt Backup

Để sao chép nhiều file với cp, chỉ cần viết tất cả các file bạn muốn sao chép, phân tách bằng dấu cách, trước khi gõ đích.

cp file1.txt file2.txt file3.txt Backup

Lệnh copy toàn bộ thư mục trong linux

Để tiết kiệm thời gian sao chép nhiều file, bạn có thể sử dụng wildcard tag, dấu (*) để tự động sao chép tất cả các file trong thư mục có cùng một phần mở rộng (extension), bằng cách gõ lệnh tương tự như ví dụ dưới đây:

cp *.txt Backup

Lệnh trên sẽ tìm tất cả các file kết thúc bằng .txt trong thư mục hiện tại và sao chép chúng vào thư mục Backup.

Lệnh copy toàn bộ thư mục trong linux

Tất nhiên, điều này chỉ hữu ích nếu tất cả hoặc hầu hết các file bạn muốn sao chép có cùng một phần mở rộng hoặc một số điểm chung khác trong tên file.

Sử dụng cp để sao chép folder/thư mục

Nếu bạn muốn một thư mục và tất cả nội dung của nó được sao chép sang một vị trí mới, bạn sẽ cần chỉ định tùy chọn -R. Đây là một ví dụ:

cp -R Files Backup

Lệnh trên sẽ sao chép thư mục Files và đặt bản sao bên trong một thư mục có tên Backup.

Nếu bạn muốn sao chép nội dung của một thư mục, nhưng không phải chính thư mục đó, bạn sẽ cần sử dụng tùy chọn -T :

cp -RT Files Backup

Những tùy chọn cp hữu ích

Các tùy chọn thường được sử dụng này cho lệnh cp chủ yếu sẽ có tác dụng nếu bạn lo lắng về khả năng có thể bị ghi đè hoặc xung đột thuộc tính file.

Bạn sẽ nhận thấy trong các lệnh trước đó rằng bạn không nhận được thông báo nào từ terminal xác nhận rằng có bất kỳ điều gì đã xảy ra. Để xem điều gì đang xảy ra, hãy sử dụng tùy chọn -v :

cp -v file.txt newfile.txt

Lệnh copy toàn bộ thư mục trong linux

Nếu lo lắng về việc vô tình ghi đè, bạn có thể đặt tùy chọn -i để luôn yêu cầu xác nhận khi có xung đột tên file. Ví dụ:

cp -i file.txt newfile.txt

Với lệnh trên, nếu file có tên newfile.txt đã xuất hiện, cp sẽ hỏi bạn có chắc chắn muốn ghi đè lên file đó không.

Lệnh copy toàn bộ thư mục trong linux

Bạn cũng có thể duy trì các thuộc tính file, chẳng hạn như quyền sở hữu của người dùng, chế độ file và ngày sửa đổi, với tùy chọn -p :

cp -v file.txt newfile.txt

Tùy chọn trên có tác dụng nếu bạn có nhiều người dùng trên hệ thống của mình hoặc nếu bạn có một hoạt động đồng bộ hóa khác cần lưu ý đến ngày sửa đổi file.

Kết luận

Giờ đây, bạn đã biết cách sử dụng cp để sao chép file một cách dễ dàng và an toàn, và bạn đã thực hiện một bước quan trọng để sử dụng dòng lệnh Linux một cách thoải mái và linh hoạt.

Dịch từ: https://www.makeuseof.com/copy-files-linux-cp/

Vân Nguyễn