Lệnh head trong Linux là một lệnh hữu ích, cho phép bạn xem phần đầu của một file hoặc một phần nội dung cụ thể một cách nhanh chóng. Việc sử dụng lệnh head không chỉ giúp bạn tiết kiệm thời gian mà còn nâng cao hiệu quả làm việc. Trong bài viết này, Vietnix sẽ cùng bạn tìm hiểu chi tiết về lệnh head trong Linux và khám phá 7 ví dụ minh họa về cách sử dụng lệnh này.
Lệnh head trong Linux là gì?
Lệnh head trong Linux dùng để hiển thị một số dòng đầu tiên của một file, mặc định là 10 dòng. Bạn cũng có thể tùy chỉnh lệnh head để hiển thị một số dòng hoặc số byte cụ thể từ file.
Cú pháp của lệnh head khá đơn giản, bao gồm tên lệnh, các tùy chọn (nếu có) và tên file.
head [OPTION]... [FILE]...
Mọi người cũng xem:
3 tùy chọn của lệnh head trong Linux
Lệnh head có rất nhiều tùy chọn hữu ích. Để biết thêm chi tiết, bạn có thể xem hướng dẫn sử dụng của lệnh head bằng lệnh:
man head
Các tùy chọn thường dùng:
Tùy chọn | Mô tả |
-c, –bytes=[-]NUM | Hiển thị NUM byte đầu tiên. Tuy nhiên, khi sử dụng dấu – làm tiền tố, tùy chọn này sẽ hiển thị mọi thứ ngoại trừ -NUM byte đầu tiên. |
-n, –lines=[-]NUM | Hiển thị NUM dòng đầu tiên. Tuy nhiên, khi sử dụng dấu – làm tiền tố, tùy chọn này sẽ hiển thị mọi thứ ngoại trừ -NUM dòng đầu tiên. |
v, –verbose | Hiển thị thông báo về quá trình thực hiện. |
7 ví dụ cụ thể của lệnh head trong Linux
- Hiển thị 10 dòng đầu tiên bằng lệnh head trong Linux
- Hiển thị n dòng đầu tiên bằng lệnh head trong Linux
- Hiển thị n byte đầu tiên bằng lệnh head trong Linux
- Hiển thị vài dòng đầu tiên của nhiều file bằng lệnh head
- Redirect output của lệnh head trong Linux
- Hiển thị một khoảng dòng cụ thể bằng lệnh head trong Linux
- Kết hợp lệnh head với các lệnh khác
Ví dụ 1: Hiển thị 10 dòng đầu tiên bằng lệnh head trong Linux
Theo mặc định, lệnh head sẽ hiển thị 10 dòng đầu tiên của một file trên terminal. Trong ví dụ này, chúng ta sẽ in 10 dòng đầu tiên của file “Numbers.txt”. Với 2 bước thực hiện:
Bước 1: Mở terminal trong directory TextLab.
Bước 2: Nhập lệnh sau vào terminal và nhấn Enter:
head Numbers.txt
Output: Lệnh head sẽ hiển thị 10 dòng đầu tiên của file “Numbers.txt” trên terminal.
Ví dụ 2: Hiển thị n dòng đầu tiên bằng lệnh head trong Linux
Trong ví dụ này, chúng ta sẽ hiển thị 7 dòng đầu tiên của file “Numbers.txt”. Có 3 bước thực hiện:
Bước 1: Mở Terminal Ubuntu trong directory TextLab.
Bước 2: Gõ 1 trong 2 lệnh sau vào terminaldấu nhắc lệnh:
head -n 7 Numbers.txt
Hoặc:
head -7 Numbers.txt
Bước 3: Nhấn Enter. Output lệnh head sẽ hiển thị 7 dòng đầu tiên của file “Numbers.txt” trên terminal.
Ví dụ 3: Hiển thị n byte đầu tiên bằng lệnh head trong Linux
Lệnh head có thể hiển thị một số byte đầu tiên của một file trên terminal bằng cách sử dụng tùy chọn -c cùng với số lượng byte cần hiển thị. Trong ví dụ này, chúng ta sẽ thực hiện hiển thị 100 byte đầu tiên của file “TheAlchemist”. Có 3 bước thực hiện
Bước 1: Mở Terminal Ubuntu trong directory TextLab.
Bước 2: Nhập lệnh sau:
head -c 100 TheAlchemist
Bước 3: Nhấn Enter. Trong hình dưới đây, bạn có thể thấy việc thêm tùy chọn -c 100 vào lệnh head thì output đã thay đổi để hiển thị 100 byte đầu tiên của file “TheAlchemist”.
Ví dụ 4: Hiển thị vài dòng đầu tiên của nhiều file bằng lệnh head
Lệnh head có thể hiển thị một số dòng đầu tiên của nhiều file cùng lúc. Trong ví dụ này, chúng ta sẽ thực hiện hiển thị 10 dòng đầu tiên của hai file “TheAlchemist” và “BeingYourself” theo 2 bước dưới đây:
Bước 1: Mở Terminal Ubuntu trong directory TextLab.
Bước 2: Nhập lệnh sau và nhấn Enter:
head TheAlchemist BeingYourself
Output: Lệnh head sẽ hiển thị 10 dòng đầu tiên của file “TheAlchemist”, sau đó là 10 dòng đầu tiên của file “BeingYourself” trên terminal.
Ví dụ 5: Redirect output của lệnh head trong Linux
Trong ví dụ này, chúng ta sẽ thực hiện chuyển hướng 3 dòng đầu tiên của hai file “Numbers.txt” và “TheAlchemist” vào một file mới.
Gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu trong directory TextLab.
Bước 2: Nhập lệnh sau vào terminal và nhấn Enter:
head -n 3 Numbers.txt TheAlchemist >> Combined.txt
Output: Trong hình dưới đây, bạn có thể thấy rằng lệnh head lấy 3 dòng đầu tiên của cả hai file redirect vào file Combined.txt.
Ví dụ 6: Hiển thị một khoảng dòng cụ thể bằng lệnh head trong Linux
Bạn có thể hiển thị các dòng trong một khoảng dòng cụ thể bằng cách kết hợp lệnh head và lệnh tail trong Linux. Giả sử bạn muốn hiển thị nội dung từ dòng num1 đến dòng num2, cú pháp sẽ như sau:
head -num2 FILE | tail -(num2-num1+1)
Trong ví dụ này, chúng ta sẽ thực hiện hiển thị nội dung từ dòng 9 đến dòng 11 của file “Numbers.txt”. Có 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu trong directory TextLab.
Bước 2: Nhập lệnh sau và nhấn Enter:
head -11 Numbers.txt | tail -3
Output: Lệnh head sẽ hiển thị nội dung từ dòng 9 đến dòng 11 của file “Numbers.txt” trên terminal.
Ví dụ 7: Kết hợp lệnh head với các lệnh khác
Trong các ví dụ trước, đã minh họa cách sử dụng lệnh head cơ bản rồi. Bây giờ sẽ kết hợp head với kỹ thuật “piping” (ký hiệu “|”) để liên kết nhiều lệnh với nhau. Mục tiêu là tìm 15 tiến trình chiếm nhiều dung lượng đĩa nhất trong thư mục home.
Gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter:
du -h | sort -hr | head -15
Output: Trong hình dưới đây, bạn có thể thấy 15 tiến trình sử dụng nhiều dung lượng đĩa nhất trong directory home đã được hiển thị bằng cách kết hợp lệnh head với các lệnh khác như lệnh du trong Linux và sort.
Câu hỏi thường gặp
Có thể sử dụng lệnh head để xem nhiều hơn 10 dòng đầu tiên của một file không?
Câu trả lời là: Có, bạn có thể sử dụng tùy chọn -n
với số lượng dòng mong muốn. Ví dụ: head -n 20 file.txt
sẽ hiển thị 20 dòng đầu tiên.
Sự khác biệt giữa lệnh head và tail trong Linux là gì?
Lệnh head hiển thị các dòng đầu tiên của một tập tin, trong khi lệnh tail hiển thị các dòng cuối cùng.
Lệnh head có thể được sử dụng để hiển thị nội dung của một URL không?
Không trực tiếp, nhưng bạn có thể kết hợp lệnh head với các công cụ khác như lệnh curl trong Linux hoặc lệnh wget
để tải xuống nội dung của một URL và sau đó sử dụng lệnh head để xem phần đầu của nó.
Lời kết
Hy vọng qua bài viết này, bạn đã hiểu rõ hơn về lệnh head và cách sử dụng để xem nội dung đầu của file trong Linux. Hãy thử nghiệm và khám phá thêm các tùy chọn và kết hợp khác để tận dụng tối đa khả năng của lệnh này trong công việc hàng ngày.