Tee Command Usage Examples

by Ramesh

Tee command is used to store and view (both at the same time) the output of any other command.

Tee command writes to the STDOUT, and to a file at a time as shown in the examples below.

Example 1: Write output to stdout, and also to a file

The following command displays output only on the screen (stdout).

  1. $ ls

The following command writes the output only to the file and not to the screen.

  1. $ ls > file

The following command (with the help of tee command) writes the output both to the screen (stdout) and to the file.

  1. $ ls | tee file

Example 2: Write the output to two commands

You can also use tee command to store the output of a command to a file and redirect the same output as an input to another command.

The following command will take a backup of the crontab entries, and pass the crontab entries as an input to sed command which will do the substituion. After the substitution, it will be added as a new cron job.

  1. $ crontab -l | tee crontab-backup.txt | sed 's/old/new/' | crontab

Misc Tee Command Operations

By default tee command overwrites the file. You can instruct tee command to append to the file using the option –a as shown below.

  1. $ ls | tee a file

You can also write the output to multiple files as shown below.

  1. $ ls | tee file1 file2 file3