Use tee
:
users | tee file | wc -w
Fornece como saída o número de usuários e grava um arquivo com os usuários como conteúdo.
O caso na sua pergunta :
command >file | command2
Isso não funciona. Com >file
, você redireciona a saída de command
para o arquivo file
e, da mesma forma, a saída é gravada em um canal anônimo, onde o comando command2
é lido na outra extremidade. Este é um redirecionamento ambíguo.
O comando tee
aceita um argumento file
as, em que tee
escreve tudo o que recebe de sua entrada padrão. tee
também grava tudo, desde a entrada padrão até a saída padrão, onde você pode redirecionar para outros comandos ou arquivos.