Lệnh tee trong linux với các ví dụ dễ hiểu

Lệnh tee trong Linux cho phép bạn đồng thời hiển thị kết quả của một lệnh trên màn hình và lưu nó vào một hoặc nhiều file. Nó rất hữu ích khi bạn muốn xem kết quả trực tiếp và có bản ghi để tham khảo sau này. Với tee, bạn có thể dễ dàng ghi lại output của các lệnh phức tạp để phân tích hoặc debug.

Lệnh tee trong linux là gì?

Lệnh command tee in linux là một công cụ mạnh mẽ cho phép bạn đồng thời hiển thị kết quả của một lệnh trên màn hình và lưu nó vào một hoặc nhiều tệp. Nó hoạt động như một chữ "T", nhận dữ liệu đầu vào, chia nó thành hai luồng: một luồng hiển thị trên terminal và một luồng ghi vào tệp. Điều này rất hữu ích khi bạn muốn theo dõi quá trình thực thi của một lệnh đồng thời lưu lại kết quả để phân tích sau này. Ví dụ, bạn có thể sử dụng tee để ghi lại nhật ký của một chương trình đang chạy hoặc lưu trữ kết quả của một truy vấn cơ sở dữ liệu. Với command tee in linux, việc quản lý và theo dõi dữ liệu trở nên dễ dàng và hiệu quả hơn rất nhiều.

Tìm hiểu Mục đích và Cú pháp của Lệnh tee

Trong bước này, bạn sẽ tìm hiểu về mục đích và cú pháp của lệnh tee trong Linux.

Lệnh tee là một công cụ mạnh mẽ cho phép bạn chuyển hướng đầu ra của một lệnh đến cả file và terminal cùng lúc.

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

tee [options] [file]

Trong đó, [options] có thể bao gồm:

  • -a: Thêm đầu ra vào file được chỉ định thay vì ghi đè lên nó.
  • -i: Bỏ qua các tín hiệu ngắt.

Để hiểu rõ hơn về mục đích của lệnh tee, hãy xem xét một ví dụ sau đây.

Giả sử bạn muốn chạy một lệnh và lưu đầu ra của nó vào một file, đồng thời hiển thị đầu ra đó trên terminal.

Bạn có thể sử dụng lệnh tee để thực hiện điều này:

$ ls -l | tee output.txt
total 0
-rw-r--r-- 1 labex labex 0 Apr 12 12:34 output.txt

Trong ví dụ trên, đầu ra của lệnh ls -l được chuyển hướng đến cả file output.txt và terminal.

Ví dụ về đầu ra:

total 0
-rw-r--r-- 1 labex labex 0 Apr 12 12:34 output.txt

Lệnh tee đặc biệt hữu ích khi bạn muốn xem đầu ra của một lệnh, đồng thời lưu nó vào một file để tham khảo sau này.

Chuyển hướng đầu ra lệnh đến tệp và Terminal

Trong bước này, bạn sẽ học cách dùng lệnh tee để chuyển hướng đầu ra đến cả tệp và terminal.

Chúng ta hãy bắt đầu bằng việc tạo một tệp văn bản mẫu nhé:

$ echo "This is a sample text file." > sample.txt

Bây giờ, hãy dùng lệnh tee để chuyển hướng đầu ra của lệnh cat đến terminal và một tệp mới:

$ cat sample.txt | tee output.txt
This is a sample text file.

Trong ví dụ trên, đầu ra của lệnh cat sample.txt được chuyển hướng đến tệp output.txt và terminal.

Ví dụ về đầu ra:

This is a sample text file.

Bạn cũng có thể dùng tùy chọn -a để thêm nội dung vào tệp đã có thay vì ghi đè nó:

$ echo "Adding more content." | tee -a output.txt
Adding more content.

Giờ thì, hãy kiểm tra nội dung của tệp output.txt xem sao nhé:

$ cat output.txt
This is a sample text file.
Adding more content.

Như bạn thấy, đầu ra đã được thêm vào tệp output.txt rồi đó.

Ghi Thêm Kết Quả Đầu Ra Vào Tệp Đã Có Với tee

Trong bước này, bạn sẽ học cách dùng lệnh tee để ghi thêm kết quả vào tệp đã có.

Chúng ta hãy bắt đầu bằng việc tạo một tệp văn bản mẫu trước nhé:

$ echo "This is the initial content." > sample.txt

Bây giờ, hãy dùng lệnh tee -a để ghi thêm kết quả của lệnh echo vào tệp sample.txt:

$ echo "Appending more content." | tee -a sample.txt
Appending more content.

Tham số -a báo cho lệnh tee biết là ghi thêm vào tệp, thay vì ghi đè lên nó.

Hãy cùng kiểm tra nội dung của tệp sample.txt xem sao:

$ cat sample.txt
This is the initial content.
Appending more content.

Như bạn thấy, nội dung mới đã được ghi thêm vào tệp hiện có rồi đó.

Bạn cũng có thể dùng lệnh tee -a để ghi thêm kết quả của một lệnh nhiều dòng vào tệp:

$ cat <<EOF | tee -a sample.txt
> This is the first line.
> This is the second line.
> This is the third line.
> EOF
This is the first line.
This is the second line.
This is the third line.

Kết quả đầu ra của lệnh cat với here-document được ghi thêm vào tệp sample.txt.

Hãy kiểm tra lại nội dung của tệp sample.txt một lần nữa nhé:

$ cat sample.txt
This is the initial content.
Appending more content.
This is the first line.
This is the second line.
This is the third line.

Nội dung mới đã được ghi thêm thành công vào tệp đã có.

Kết luận cho linux tee command

Tóm lại, lệnh tee là một công cụ vô cùng hữu ích trong Linux, giúp bạn dễ dàng sao chép đầu ra của một lệnh sang nhiều nơi cùng lúc. Bạn có thể vừa xem kết quả trên màn hình, vừa lưu nó vào một file để sử dụng sau này, rất tiện lợi phải không? Với linux tee command, việc ghi lại nhật ký hoạt động của hệ thống hay lưu trữ kết quả của các lệnh phức tạp trở nên đơn giản hơn bao giờ hết. Hãy thử nghiệm với các tùy chọn khác nhau của tee để khám phá thêm những khả năng tuyệt vời mà nó mang lại. Hy vọng bài viết này đã giúp bạn hiểu rõ hơn về lệnh tee và cách sử dụng nó một cách hiệu quả. Chúc bạn thành công trong việc khám phá thế giới Linux!

Last Updated : 14/10/2025