NỘI DUNG

Hosting tốc độ cao Vietnix - tốc độ tải trang trung bình dưới 1 giây
VPS siêu tốc Vietnix - trải nghiệm mượt mà, ổn định
03/05/2024
Lượt xem

Hướng dẫn lệnh để copy file và thư mục trong Linux đơn giản, dễ hiểu

03/05/2024
9 phút đọc
Lượt xem

Đánh giá

5/5 - (167 bình chọn)

Copy file, thư mục hẳn là những tác vụ cơ bản nhất khi làm việc với command line. Để sử dụng thành thạo và nhanh hơn khi thao tác trên Linux, bài viết này Vietnix sẽ hướng dẫn các câu lệnh cơ phổ biến nhất để copy file và thư mục trong Linux dễ dàng.

Copy file trong Linux bằng lệnh cp

Để thực hiện được việc copy file và thư mục thì trước hết bạn luôn phải có quyền đọc trên file gốc, và quyền viết ở trên thư mục đích. Trên các hệ điều hành UnixLinux, lệnh cp được dùng để copy file và thư mục.

Copy file trong Linux
Copy file trong Linux
  • Trường hợp đơn giản nhất là khi bạn cần copy một file trong thư mục đang làm việc. Chẳng hạn, bạn có một file tên file.txt và muốn copy thành file_backup.txt trong thư mục đang làm việc thì có thể dùng lệnh sau:
cp file.txt file_backup.txt
  • Nếu file đích đã tồn tại thì nó sẽ bị ghi đè bởi lệnh cp. Để nhận thông báo yêu cầu xác định trước khi thực hiện ghi đè file thì bạn có thể thêm option -i vào lệnh như sau:
cp -i jump.sh jump2.sh
Xác nhận trước khi copy file
Xác nhận trước khi copy file
  • Theo mặc định thì file được tạo bởi lệnh cp sẽ có quyền sở hữu thuộc về người dùng đã thực thi lệnh. Nếu muốn giữ nguyên chế độ, quyền sở hữu và timestamp của file thì bạn có thể thêm option -p vào lệnh:
cp -p file.txt file_backup.txt
  • Lệnh cp còn có thêm một option phổ biến nữa là -v, dùng để hiển thị tiến trình khi thực thi lệnh:
cp -v file.txt file_backup.txt

Ngoài ra, bạn cũng có thể xem thêm một số bài viết khác về các câu lệnh trong Linux dưới đây:

Copy file vào một thư mục

Để copy file vào một thư mục, bạn cần chỉ định đường dẫn tương đối hoặc đường dẫn đầy đủ đến thư mục. Nếu không chỉ định đường dẫn cho thư mục gốc thì mặc định file sẽ được copy vào thư mục hiện tại.

  • Ví dụ bạn cần copy file jump2.sh vào thư mục /Documents:
cp jump2.sh ~/Documents/
Copy file vào một thư mục
Copy file vào một thư mục

Nếu chỉ chỉ định tên thư mục thì file được copy sẽ có tên giống file gốc.

  • Mặt khác, nếu muốn copy file rồi đổi thành tên mới thì có thể chỉ định tên như sau:
cp jump2.sh ~/Documents/jump3.sh
Copy và đổi tên mới file
Copy và đổi tên mới file

Copy nhiều file cùng một lúc

Để copy nhiều file một lúc trong Linux, bạn hãy chỉ định tên của các file và thư mục gốc, đổi số cuối trong câu lệnh sẽ là thư mục đích cần copy đến.

cp -r dir_1/ jump2.sh jump.sh ~/Documents/
Copy nhiều file cùng một lúc
Copy nhiều file cùng một lúc

Khi copy nhiều file, cần lưu ý rằng đích để copy bắt buộc phải là một thư mục.

Ngoài ra, lệnh cp còn cho phép khớp mẫu. Như bạn đang cần copy các file .png từ thư mục hiện tại vào thư mục /backup thì có thể dùng lệnh sau:

cp ~/Desktop/*.sh ~/Documents/
Copy các file có cùng định dạng từ thư mục hiện tại vào thư mục cần thiết
Copy các file có cùng định dạng từ thư mục hiện tại vào thư mục cần thiết

Copy directory trong Linux bằng lệnh cp

Để copy thư mục trong Linux (bao gồm tất cả file và thư mục con có chứa trong đó), bạn dùng các option -R hoặc -r trong lệnh cp. Ví dụ bạn cần copy thư mục Pictures vào Pictures_backup thì có thể sử dụng lệnh như dưới đây:

cp -R ~/Downloads/file1/file6/file8/2024 ~/Downloads/file1/file6/file7/time/
copy directory bang lenh cp
Copy directory bằng lệnh cp

Lệnh trên sẽ tạo thư mục đích rồi copy tất cả file và thư mục con trong thư mục gốc vào thư mục đích này. Nếu thư mục đích đã có sẵn thì thư mục gốc, cùng với các nội dung có trong đó, sẽ được copy đến thư mục đích mà không cần tạo nữa.

Các option khác cũng tương tự như thực hiện copy file trong Linux, chỉ khác ở chỗ bạn phải dùng option -R khi cần thực hiện copy thư mục.

Copy file và thư mục trong Linux bằng lệnh rsync

rsync là một công cụ command line rất nhanh và linh hoạt, được dùng để đồng bộ hoá file và thư mục giữa hai vị trí khác nhau. Vì vậy, bạn hoàn toàn có thể dùng lệnh rsync để copy file đến những vị trí khác.

Đặc biệt hơn, rsync cung cấp rất nhiều option khác nhau để kiểm soát cách hoạt động của lệnh. Trong đó option hữu ích nhất chắc chắn là -a, có khả năng copy các thư mục (theo kiểu đệ quy), chuyển các thiết bị đặc biệt và vẫn bảo tồn được symlink (liên kết tượng trưng), thời gian chỉnh sửa, nhóm, quyền sở hữu và quyền truy cập.

  • Để copy từng file sang một vị trí mới, bạn có thể dùng lệnh như sau:
rsync -a file.txt file_backup.txt

Nếu file đích đã có sẵn thì rsync sẽ ghi đè lên.

  • Cách copy thư mục trong Linux bằng lệnh rsync cũng tương tự:
rsync -a /home/nam/Downloads/file1/file2/file3/compress_file.tar.gz /home/nam/Downloads/file1/file6
copy thu muc bang lenh rsync
Copy thư mục bằng lệnh rsync

Lưu ý: Nếu bạn thêm dấu gạch chéo (/) vào thư mục gốc thì lệnh rsync sẽ chỉ copy nội dung của thư mục gốc vào thư mục đích. Nếu không có dấu (/) thì lệnh rsync sẽ copy thư mục gốc bên trong thư mục đích. Nói chung, để an toàn thì hãy luôn viết dấu (/) vào trong cả thư mục gốc lẫn thư mục đích.

Câu hỏi thường gặp

Có thể sử dụng lệnh cp để tạo bản sao lưu dữ liệu tự động không?

Có thể. Và để nâng cao sự hiệu quả và linh hoạt bạn có thể kết hợp lệnh cp với các công cụ kỹ thuật khác như: tạo script (script) tự động; sử dụng công cụ rsync

Có cách nào để copy file đồng bộ giữa hai thư mục trong Linux không?

Có thể. Bạn có thể chọn Rsync làm dòng lệnh thực hiện để tối ưu các công việc như đồng bộ hoá dữ liệu giữa các máy tính và thư mục.

Có cách nào để copy file đồng bộ giữa hai thư mục trong Linux không?

Có. Rsync là công cụ phổ biến và hiệu quả nhất đáng để bạn lựa chọn trong việc thực thi lệnh. Ngoài ra bạn còn có thể sử dụng các công cụ khác như: Unison; Syncthing,…

Lời kết

Với những gì Vietnix chia sẻ bên trên trong series này, có thể giúp bạn hiểu hơn từng câu lệnh và hữu ích với trong quá trình sử dụng Linux. Đặc biệt, trong bài viết này là sử dụng câu lệnh cprsync để thực hiển copy file trong Linux nhanh chóng thông qua Terminal. Các hệ điều hành dựa trên Unix cũng có thể thực hiện tương tự với hai câu lệnh mạnh mẽ và phổ biến nhất là cprsync.

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Chọn chủ đề :

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Black Friday Hosting & VPS

Chương trình bắt đầu sau

Giảm giá 40% hosting VPS

50 coupon mỗi ngày

Gia hạn giá không đổi

NHẬN DEAL NGAY
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG