head command in linux

Lệnh Head Trong Linux: Hướng Dẫn Chi Tiết Cho Người Mới Bắt Đầu

Bạn là người mới làm quen với Linux và đang tìm hiểu về các lệnh cơ bản? Hay bạn đã quen thuộc với dòng lệnh nhưng muốn hiểu sâu hơn về lệnh head? Bài viết này sẽ cung cấp cho bạn một cái nhìn toàn diện về lệnh head trong Linux, từ cú pháp cơ bản đến các ví dụ thực tế và so sánh với các lệnh tương tự.

Lệnh head là một công cụ mạnh mẽ cho phép bạn xem nhanh phần đầu của một tập tin. Nó đặc biệt hữu ích khi bạn cần kiểm tra cấu trúc của một file, xem nhật ký hoạt động hoặc đơn giản là trích xuất một vài dòng đầu tiên của một văn bản lớn.

head là gì và tại sao bạn nên sử dụng nó?

Trong thế giới Linux, việc xử lý và phân tích dữ liệu thường xuyên được thực hiện thông qua dòng lệnh. Lệnh head đóng vai trò quan trọng trong quá trình này, giúp bạn:

  • Xem nhanh nội dung tập tin: Thay vì mở toàn bộ file, head cho phép bạn xem nhanh những dòng đầu tiên.
  • Kiểm tra định dạng file: Nhanh chóng xác định cấu trúc và định dạng của file.
  • Trích xuất dữ liệu: Lấy ra một phần dữ liệu cần thiết từ file lớn.
  • Xử lý nhật ký hệ thống: Phân tích các dòng nhật ký mới nhất để theo dõi hoạt động hệ thống.

Cú pháp cơ bản của lệnh head

Cú pháp của lệnh head khá đơn giản:

head [tùy chọn] [tên_tập_tin]

Trong đó:

  • head: Lệnh gọi thực thi.
  • [tùy chọn]: Các tùy chọn điều chỉnh hành vi của lệnh.
  • [tên_tập_tin]: Tên của tập tin bạn muốn xem (nếu không có, head sẽ đọc từ đầu vào chuẩn).

Các tùy chọn thường dùng với lệnh head

Dưới đây là một số tùy chọn quan trọng nhất của lệnh head:

  • -n K: Hiển thị K dòng đầu tiên (mặc định là 10). Ví dụ: head -n 20 file.txt hiển thị 20 dòng đầu tiên.
  • -c K: Hiển thị K byte đầu tiên. Ví dụ: head -c 100 file.txt hiển thị 100 byte đầu tiên.
  • -v: Luôn hiển thị tên file trước nội dung (hữu ích khi xử lý nhiều file).
  • -q: Ẩn tên file khi chỉ có một file được xử lý.

Ví dụ thực tế sử dụng lệnh head

Để hiểu rõ hơn về cách sử dụng lệnh head, hãy cùng xem một số ví dụ cụ thể:

Ví dụ 1: Xem 10 dòng đầu tiên của một file

Giả sử bạn có một file tên là data.txt. Để xem 10 dòng đầu tiên của file này, bạn chỉ cần gõ:

head data.txt

Ví dụ 2: Xem 5 dòng đầu tiên của một file

Để xem chỉ 5 dòng đầu tiên, bạn sử dụng tùy chọn -n:

head -n 5 data.txt

Ví dụ 3: Xem 150 byte đầu tiên của một file

Sử dụng tùy chọn -c để xem một số lượng byte cụ thể:

head -c 150 data.txt

Ví dụ 4: Sử dụng head với pipe

head thường được sử dụng kết hợp với các lệnh khác thông qua pipe (|). Ví dụ, để xem 3 process đang sử dụng nhiều CPU nhất:

ps -aux | sort -k3 -nr | head -n 3

Lệnh này sẽ:

  • ps -aux: Liệt kê tất cả các process.
  • sort -k3 -nr: Sắp xếp các process theo cột thứ 3 (CPU usage) theo thứ tự giảm dần.
  • head -n 3: Lấy 3 dòng đầu tiên (3 process sử dụng nhiều CPU nhất).

So sánh head với các lệnh tương tự

Ngoài head, Linux còn có một số lệnh khác có chức năng tương tự, ví dụ như tail. Dưới đây là bảng so sánh giữa head và tail:

Lệnh Mô tả Công dụng chính
head Hiển thị phần đầu của file. Xem nhanh nội dung đầu file, kiểm tra định dạng, trích xuất dữ liệu đầu file.
tail Hiển thị phần cuối của file. Xem nhật ký hoạt động mới nhất, theo dõi thay đổi của file theo thời gian thực.

Các tình huống sử dụng head trong thực tế

Dưới đây là một số tình huống thực tế bạn có thể sử dụng lệnh head:

  • Phân tích log file: Kiểm tra các dòng log mới nhất để phát hiện lỗi hoặc vấn đề.
  • Kiểm tra file cấu hình: Xem các thiết lập cơ bản trong file cấu hình.
  • Trích xuất dữ liệu từ CSV: Lấy ra một vài dòng đầu tiên của file CSV để xem cấu trúc dữ liệu.
  • Xử lý dữ liệu lớn: Chia nhỏ dữ liệu lớn thành các phần nhỏ hơn để xử lý từng phần.

Mẹo và thủ thuật khi sử dụng head

  • Kết hợp head với wc -l để đếm số dòng trong file: head -n 10 file.txt | wc -l sẽ đếm số dòng trong 10 dòng đầu tiên của file.
  • Sử dụng head để tạo sample data: Bạn có thể dùng head để tạo một file sample nhỏ từ một file dữ liệu lớn.
  • Lưu ý đến encoding của file: Nếu file sử dụng encoding khác UTF-8, bạn có thể cần chỉ định encoding để head hiển thị đúng nội dung.

FAQ về lệnh head

Câu hỏi: Làm thế nào để xem 2 dòng đầu tiên của nhiều file cùng lúc?

Trả lời: Sử dụng lệnh head -n 2 file1.txt file2.txt. Lệnh này sẽ hiển thị 2 dòng đầu tiên của cả file1.txt và file2.txt, kèm theo tên file.

Câu hỏi: Tại sao head lại không hiển thị đúng nội dung của file?

Trả lời: Có thể do encoding của file không được hỗ trợ. Hãy thử kiểm tra encoding của file và sử dụng các công cụ chuyển đổi encoding nếu cần thiết.

Câu hỏi: head có thể sử dụng với wildcard không?

Trả lời: Có, bạn có thể sử dụng wildcard. Ví dụ, head -n 5 .txt sẽ hiển thị 5 dòng đầu tiên của tất cả các file có đuôi .txt trong thư mục hiện tại.

Kết luận

Lệnh head là một công cụ đơn giản nhưng vô cùng hữu ích trong Linux. Với khả năng xem nhanh phần đầu của file, head giúp bạn tiết kiệm thời gian và công sức trong việc xử lý dữ liệu và quản lý hệ thống. Hy vọ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 head một cách hiệu quả.

Hãy thử nghiệm các ví dụ trong bài viết và khám phá thêm những cách sử dụng head khác nhau để nâng cao kỹ năng làm việc với dòng lệnh Linux của bạn!

Last Updated : 21/08/2025