
Linux tuy không có giao diện Graphical user interface tốt được như Windows nhưng bù lại, nó lại có giao diện dòng lệnh cực kỳ mạnh mẽ. Trong đó có lệnh Tee - vừa đưa kết quả ra màn hình vừa đưa vào tệp tin đã chỉ định.
Lệnh “tee”
Mục đích của lệnh Tee là đọc nội dung từ STDIN (standard input), xuất ra STDOUT (standard output) và ghi vào file.
Lệnh “Tee” được sử dụng để lưu trữ và xem (cùng một lúc) output của các lệnh bất kỳ.
Lệnh Tee ghi vào STDOUT và vào một tệp tại một thời điểm nhất định như được trình bày trong các ví dụ bên dưới.
Cấu trúc lệnh Tee:
tee[OPTION]...[FILE]...
Các ví dụ về lệnh tee
Ví dụ 1: Viết output cho stdout và cho một tệp
Lệnh sau chỉ hiển thị output trên màn hình (stdout).
$ ls
Còn lệnh dưới đây chỉ ghi output vào tệp chứ không phải vào màn hình.
$ ls > file
Lệnh sau đây (với sự hỗ trợ của lệnh tee) ghi output cả vào màn hình (stdout) và vào tệp.
$ ls | tee file
Ví dụ 2: Viết output cho hai lệnh
Bạn cũng có thể sử dụng lệnh tee để lưu trữ output của lệnh vào một tệp và chuyển hướng output tương tự thành 1 input cho lệnh khác.
Lệnh sau sẽ lấy một bản sao lưu của các mục nhập crontab, và chuyển các mục nhập crontab làm input cho lệnh sed là lệnh sẽ thực hiện việc thay thế. Sau khi thay thế, bản sao lưu sẽ được thêm vào như một nhiệm vụ cron mới.
$ crontab -l | tee crontab-backup.txt | sed 's/old/new/' | crontab –
Lệnh chỉ huy Misc Tee
Theo mặc định lệnh tee sẽ ghi đè tệp. Bạn có thể cấu trúc lệnh tee để thêm vào tệp bằng cách sử dụng tùy chọn –a như được hiển thị bên dưới.
$ ls | tee –a file
Bạn cũng có thể viết output cho nhiều tệp như hướng dẫn bên dưới.
$ ls | tee file1 file2 file3