O comando tee do Linux é bastante semelhante ao comando 'cat', com apenas uma diferença. Ele coloca stdin em stdout e também os coloca em um arquivo. É um dos comandos mais utilizados junto com outros comandos através de piping. Ele nos permite escrever tudo o que for fornecido da entrada padrão para a saída padrão. Opcionalmente, fornece gravação em um ou mais arquivos. O nome do comando tee vem do divisor T usado em encanamento.
Sintaxe:
tee
Opções:
A seguir estão algumas opções úteis que podem ser usadas com o comando tee para torná-lo mais específico:
-a, --append: É usado para anexar os dados aos arquivos fornecidos, não substitui os dados.
python __nome__
-i, --ignore-interrupções: É usado para ignorar os sinais de interrupção.
-p: É usado para diagnosticar erros ao gravar em não-pipes.
--output-error[=MODO]: É usado para definir o comportamento no modo de erro de gravação.
--ajuda: É usado para exibir a documentação de ajuda.
--versão: ele é usado para exibir as informações da versão.
Exemplos do comando tee
Vejamos os seguintes exemplos do comando tee:
- Como usar o comando tee
- Escreva um arquivo e anexe a saída
- Grave o estado dos dados em um arquivo
- Escreva em vários arquivos
- Escreva em um arquivo privilegiado
- Ignorando interrupções
- Ocultar a saída
Como usar o comando tee
O comando tee é usado para gravar uma entrada padrão na saída padrão e em um arquivo. É usado depois de um cachimbo. Para gravar na saída padrão e em um arquivo, especifique o comando tee após um canal e forneça o(s) nome(s) do(s) arquivo(s). Considere o comando abaixo:
cat weeks.txt | tee newfile.txt
O comando acima irá gravar a entrada de ‘weeks.txt’ em ‘newfile.txt’. Considere a saída abaixo:
A partir da saída acima, um arquivo 'newfile.txt' é criado usando o comando tee.
Escreva um arquivo e anexe a saída
A opção '-a' é usada com o comando tee para anexar a saída e gravá-la em um arquivo. Considere o comando abaixo:
echo 'Saturday and Sunday are week offs' | tee -a newfile.txt
O comando acima anexará a entrada especificada ao 'newfile.txt'. Considere a saída abaixo:
A partir da saída acima, a entrada especificada é anexada a 'newfile.txt'.
Grave o estado dos dados em um arquivo
Escrever o estado dos dados é muito útil para fazer backup ou criar um snap dos dados para fins de depuração. Isso pode ser feito facilmente usando o comando tee.
Para gravar o estado dos dados em um arquivo, execute o comando abaixo:
matriz de classificação java
ls ~/ | tee pipe1.txt | grep ^b | tee pipe2.txt | sort -r
O comando acima irá gravar os dados em pipe1.txt. Considere a saída abaixo:
A partir da saída acima, o snap dos dados do diretório de trabalho atual é armazenado em 'newfile.txt'.
Escreva em vários arquivos
O comando tee nos permite gravar em vários arquivos. Para gravar em vários arquivos, especifique os nomes dos arquivos após o comando tee da seguinte forma:
echo ' add text' | tee file1.txt file2.txt file3.txt
O comando acima criará todos os arquivos especificados. Considere a saída abaixo:
Escreva em um arquivo privilegiado
O comando tee nos permite escrever em um arquivo com privilégio sudo. Se tentarmos escrever um arquivo de propriedade do usuário root, ocorrerá um erro de permissão. Porém, podemos elevar a permissão sudo executando o comando tee da seguinte forma:
echo 'some text' | sudo tee -a
Ignorando interrupções
A opção '-i' é usada para ignorar as interrupções. Isso é útil se quisermos parar e sair do comando normalmente durante a execução. É usado da seguinte forma:
command | tee -i
Ocultar a saída
Para restringir o comando tee para não gravar na saída padrão, redirecione-o para '/dev/null'. Execute o comando da seguinte forma:
echo 'Text' | tee newfile.txt >/dev/null
Considere a saída abaixo: