En un entorno Unix, quiero usar tee
en una cadena de comandos, así:Unix y camiseta - cadena de comandos
$ echo 1; echo 2 | tee file
1
2
$ cat file
2
¿Por qué file
sólo terminan por tener la salida de la última orden?
Para los propósitos de esta discusión, vamos a suponer que no puedo separarlos y ejecutar los comandos por separado.
Así como la creación de una explícita sub-shell , puedes usar '{echo 1; echo 2; } | tee file' para obtener la salida en un archivo. Tenga en cuenta que '{' tiene que estar separado del comando por un espacio, y '}' debe aparecer donde podría aparecer un comando (por lo tanto, es después del segundo punto y coma). La otra alternativa es siempre crear una nueva secuencia de comandos que contenga los dos comandos indivisibles y canalizar la salida de eso a 'tee':' conjoined-twin-processes | archivo de tee'. –