Linux split command

Lệnh Split Trong Linux: Chia Nhỏ Tệp Lớn Dễ Dàng

Bạn có một tệp tin quá lớn, khiến việc chia sẻ, tải lên hoặc xử lý trở nên khó khăn? Đừng lo lắng! Lệnh split trong Linux là công cụ hoàn hảo để "xẻ nhỏ" tệp tin khổng lồ thành những phần nhỏ hơn, dễ quản lý hơn. Bài viết này sẽ hướng dẫn bạn cách sử dụng lệnh split một cách chi tiết, kèm theo các ví dụ thực tế và so sánh để bạn dễ dàng nắm bắt.

Vậy Lệnh Split Là Gì?

Lệnh split là một tiện ích dòng lệnh mạnh mẽ trong hệ điều hành Linux (và các hệ thống Unix-like khác) cho phép bạn chia một tệp tin lớn thành nhiều tệp tin nhỏ hơn. Điều này đặc biệt hữu ích khi bạn cần:

  • Chia sẻ tệp tin lớn qua email hoặc các dịch vụ giới hạn kích thước tệp.
  • Tải lên tệp tin lên các dịch vụ lưu trữ đám mây có giới hạn về kích thước mỗi tệp.
  • Xử lý các tệp tin lớn trên các hệ thống có tài nguyên hạn chế.
  • Sao lưu dữ liệu một cách hiệu quả hơn.

Lệnh split hoạt động bằng cách chia tệp tin đầu vào thành các phần nhỏ hơn, dựa trên kích thước hoặc số lượng dòng bạn chỉ định. Các tệp tin đầu ra sẽ được đặt tên theo một quy tắc nhất định, giúp bạn dễ dàng quản lý và ghép chúng lại khi cần thiết.

Cú Pháp Cơ Bản Của Lệnh Split

Cú pháp cơ bản của lệnh split như sau:

split [OPTIONS] [INPUT [PREFIX]]

Trong đó:

  • OPTIONS: Các tùy chọn để điều chỉnh cách lệnh split hoạt động (ví dụ: kích thước mỗi phần, số lượng dòng, tiền tố tên tệp).
  • INPUT: Tên của tệp tin bạn muốn chia. Nếu bỏ qua, split sẽ đọc dữ liệu từ đầu vào chuẩn (stdin).
  • PREFIX: Tiền tố cho tên các tệp tin đầu ra. Mặc định là "x".

Các Tùy Chọn Thường Dùng Của Lệnh Split

Lệnh split cung cấp nhiều tùy chọn khác nhau để đáp ứng nhu cầu chia tệp tin đa dạng. Dưới đây là một số tùy chọn quan trọng nhất:

  • -b, --bytes=SIZE: Chia tệp tin thành các phần có kích thước SIZE byte. Bạn có thể sử dụng các hậu tố như K (kilobyte), M (megabyte), G (gigabyte), T (terabyte), P (petabyte), E (exabyte), Z (zettabyte), Y (yottabyte). Ví dụ: -b 10M để chia thành các phần 10MB.
  • -l, --lines=NUMBER: Chia tệp tin thành các phần có NUMBER dòng. Ví dụ: -l 1000 để chia thành các phần 1000 dòng.
  • -n, --number=CHUNKS: Chia tệp tin thành CHUNKS phần. Cách chia này có thể không đảm bảo kích thước mỗi phần bằng nhau.
  • -d, --numeric-suffixes: Sử dụng hậu tố số cho tên tệp tin đầu ra thay vì hậu tố chữ cái.
  • -a, --suffix-length=LENGTH: Sử dụng hậu tố có độ dài LENGTH ký tự. Mặc định là 2.
  • --verbose: Hiển thị thông tin chi tiết về quá trình chia tệp.

Ví Dụ Thực Tế Về Cách Sử Dụng Lệnh Split

Để hiểu rõ hơn về cách hoạt động của lệnh split, hãy cùng xem xét một số ví dụ cụ thể.

Ví dụ 1: Chia Tệp Tin Thành Các Phần Kích Thước 1MB

Giả sử bạn có một tệp tin tên là large_file.txt và bạn muốn chia nó thành các phần có kích thước 1MB. Bạn có thể sử dụng lệnh sau:

split -b 1M large_file.txt split_file_

Lệnh này sẽ tạo ra các tệp tin có tên là split_file_aa, split_file_ab, split_file_ac,... mỗi tệp tin có kích thước khoảng 1MB. Tiền tố "split_file_" có thể được thay đổi tùy ý.

Ví dụ 2: Chia Tệp Tin Thành Các Phần Có 1000 Dòng

Nếu bạn muốn chia tệp tin large_file.txt thành các phần, mỗi phần chứa 1000 dòng, bạn có thể sử dụng lệnh sau:

split -l 1000 large_file.txt part_

Lệnh này sẽ tạo ra các tệp tin có tên là part_aa, part_ab, part_ac,... mỗi tệp tin chứa khoảng 1000 dòng.

Ví dụ 3: Chia Tệp Tin Thành 5 Phần Bằng Nhau

Để chia tệp tin large_file.txt thành 5 phần, bạn có thể sử dụng lệnh sau:

split -n 5 large_file.txt section_

Lệnh này sẽ tạo ra các tệp tin có tên là section_aa, section_ab, section_ac, section_ad, và section_ae. Lưu ý rằng kích thước của mỗi phần có thể không hoàn toàn bằng nhau.

Ví dụ 4: Sử Dụng Hậu Tố Số Thay Vì Chữ Cái

Để sử dụng hậu tố số cho tên tệp tin đầu ra, bạn có thể sử dụng tùy chọn -d:

split -d -b 500K large_file.txt chunk_

Lệnh này sẽ tạo ra các tệp tin có tên là chunk_00, chunk_01, chunk_02,...

Ghép Các Tệp Tin Đã Chia Lại Với Nhau

Sau khi chia tệp tin, bạn có thể dễ dàng ghép chúng lại thành tệp tin ban đầu bằng lệnh cat trong Linux:

cat split_file_ > original_file.txt

Lệnh này sẽ ghép tất cả các tệp tin có tên bắt đầu bằng "split_file_" và lưu chúng vào tệp tin mới có tên là original_file.txt. Hãy chắc chắn rằng bạn đang ở trong cùng thư mục với các tệp tin đã chia trước khi thực hiện lệnh này.

So Sánh Lệnh Split Với Các Công Cụ Khác

Mặc dù lệnh split rất hữu ích, nhưng cũng có một số công cụ khác có thể được sử dụng để chia tệp tin. Dưới đây là bảng so sánh giữa lệnh split và một số công cụ phổ biến khác:

Công Cụ Ưu Điểm Nhược Điểm Trường Hợp Sử Dụng Phù Hợp
Lệnh split
  • Có sẵn trên hầu hết các hệ thống Linux/Unix.
  • Đơn giản, dễ sử dụng.
  • Linh hoạt với nhiều tùy chọn chia.
  • Chỉ có thể chia dựa trên kích thước hoặc số lượng dòng.
  • Không có giao diện đồ họa.
Chia tệp tin lớn trên dòng lệnh khi cần tính linh hoạt và tốc độ.
7-Zip
  • Hỗ trợ nén và chia tệp tin cùng lúc.
  • Có giao diện đồ họa.
  • Hỗ trợ nhiều định dạng nén.
  • Cần cài đặt thêm.
Chia sẻ và lưu trữ tệp tin lớn, đặc biệt khi cần nén để tiết kiệm dung lượng.
HJSplit
  • Miễn phí, dễ sử dụng.
  • Có giao diện đồ họa.
  • Hỗ trợ tạo tệp tin checksum để kiểm tra tính toàn vẹn.
  • Chỉ chạy trên Windows.
Chia sẻ tệp tin lớn trên Windows một cách dễ dàng và an toàn.

Các Lưu Ý Quan Trọng Khi Sử Dụng Lệnh Split

  • Dung lượng ổ đĩa: Đảm bảo rằng bạn có đủ dung lượng ổ đĩa để lưu trữ các tệp tin đã chia.
  • Tên tệp tin: Chọn một tiền tố tên tệp tin dễ nhớ và không trùng với các tệp tin khác trong thư mục.
  • Số lượng phần: Cân nhắc số lượng phần bạn muốn chia tệp tin thành, dựa trên nhu cầu sử dụng và giới hạn của các dịch vụ bạn dự định sử dụng.
  • Kiểm tra sau khi ghép: Sau khi ghép các tệp tin đã chia lại, hãy kiểm tra kỹ lưỡng để đảm bảo rằng tệp tin kết quả hoàn toàn giống với tệp tin gốc.

FAQ Về Lệnh Split

Câu hỏi 1: Làm thế nào để chia tệp tin thành các phần có kích thước khác nhau?

Lệnh split không hỗ trợ chia tệp tin thành các phần có kích thước khác nhau trực tiếp. Bạn có thể sử dụng các công cụ khác hoặc viết một script để thực hiện việc này.

Câu hỏi 2: Tại sao sau khi ghép các tệp tin lại, tệp tin kết quả lại bị lỗi?

Lỗi này có thể xảy ra do một số nguyên nhân, chẳng hạn như:

  • Quá trình chia tệp tin bị gián đoạn.
  • Các tệp tin đã chia bị hỏng.
  • Thứ tự ghép các tệp tin bị sai.

Hãy kiểm tra kỹ lưỡng các yếu tố này và thử lại.

Câu hỏi 3: Lệnh split có thể chia các loại tệp tin nào?

Lệnh split có thể chia bất kỳ loại tệp tin nào, bao gồm tệp tin văn bản, tệp tin hình ảnh, tệp tin video, v.v.

Kết Luận

Lệnh split là một công cụ vô cùng hữu ích để chia nhỏ các tệp tin lớn trong Linux. Với cú pháp đơn giản, nhiều tùy chọn linh hoạt và khả năng ghép lại tệp tin dễ dàng, split giúp bạn quản lý, chia sẻ và xử lý dữ liệu một cách hiệu quả hơn. Hy vọng rằng bài viết này đã cung cấp cho bạn những kiến thức cần thiết để sử dụng lệnh split một cách thành thạo. Chúc bạn thành công!

Last Updated : 22/08/2025