If a FILE is specified as a dash ("-"), tee writes again to standard output.
The following command displays output only on the screen (stdout).
$ ls
The following command writes the output only to the file and not to the screen.
$ ls > file
The following command (with the help of tee
command) writes the output both to the screen (stdout) and to the file.
$ ls | tee file
You can also use tee
command to store the output of a command in a file and redirect the same output to another command.
The following command will write current crontab entries to a file crontab-backup.txt
and pass the crontab entries to sed
command, which will do the substituion. After the substitution, it will be added as a new cron job.
$ crontab -l | tee crontab-backup.txt | sed 's/old/new/' | crontab –
You can pipe your output to multiple files (including your terminal) by using tee
like this:
$ ls | tee file1 file2 file3
By default tee
command overwrites the file. You can instruct tee
to append to the file using the –a
option as shown below.
$ ls | tee –a file
Options | Description |
---|---|
-a, --append | Append to the given FILEs. Do not overwrite. |
-i, --ignore-interrupts | Ignore interrupt signals. |
--help | Display a help message, and exit. |
--version | Display version information, and exit. |