Quando você executa um comando em uma janela do Terminal, a saída do comando é normalmente impressa no Terminal, ou na tela, para que você possa lê-la imediatamente. Você também pode imprimir a saída de um comando em um arquivo, se quiser salvá-lo.
Salvar a saída de um comando em um arquivo é útil se você estiver tentando diagnosticar um problema. Para obter ajuda do suporte técnico, pode ser necessário executar determinados comandos em seu computador e enviar os resultados para a equipe de suporte. Isso é fácil usando o redirecionamento de saída na linha de comando.
Hoje, abordaremos como enviar a saída de um comando para um arquivo de texto no shell bash no Windows, Mac e Linux.
Observação: Estaremos usando o Terminal Mac em nosso exemplo, mas funciona da mesma maneira no shell bash no Linux e no novo shell bash no Windows 10 .
Redirecionar a saída para um arquivo apenas
Existem dois operadores para redirecionar a saída de um comando para um arquivo em vez da tela.
o > símbolo cria um novo arquivo se não estiver presente ou substitui o arquivo se ele já existir. o >> também cria um novo arquivo se não estiver presente, mas anexa o texto ao final do arquivo se ele já existir, em vez de sobrescrever o arquivo.
Para redirecionar a saída de um comando para um arquivo, digite o comando, especifique o > ou o >> operador e, em seguida, forneça o caminho para um arquivo para o qual deseja que a saída seja redirecionada. Por exemplo, o comando ls lista os arquivos e pastas no diretório atual. Quando você executa o seguinte comando, a lista de arquivos e pastas será gravada no ls_output.txt arquivo no TerminalOutput pasta.
Substituir / caminho / para / arquivo com o caminho completo para o arquivo que deseja usar.
ls > /path/to/file
Este é o comando para nosso exemplo.
quanto dinheiro posso ganhar minerando bitcoin
ls > /Users/lorikaufman/TerminalOutput/ls_output.txt
Para ver o conteúdo do arquivo na janela do Terminal, use o gato comando conforme mostrado no comando a seguir. Novamente, substitua / caminho / para / arquivo com o caminho completo para o arquivo que você deseja visualizar.
cat /path/to/file
o > O operador substitui o conteúdo de um arquivo existente sempre que você o usa para redirecionar a saída. Se você deseja salvar a saída de vários comandos em um único arquivo, use o >> operador em vez disso. Isso acrescenta a saída de um comando ao final do arquivo especificado, se ele já existir. Se o arquivo não existir, ele cria um novo.
Por exemplo, anexaremos informações do sistema ao final do arquivo que criamos acima. Então, na linha a seguir, uname -a é o comando, seguido pelo >> operador de redirecionamento. Então, o caminho completo para o arquivo ao qual queremos anexar a saída do uname comando.
o -para parâmetro no uname comando imprime todas as informações do sistema disponíveis.
uname -a >> /Users/lorikaufman/TerminalOutput/ls_output.txt
Para visualizar o arquivo com as informações anexadas na janela Terminal, digite o seguinte comando, com o caminho completo para o seu arquivo.
como se livrar do google drive
cat /Users/lorikaufman/TerminalOutput/ls_output.txt
Repita esse processo quantas vezes você precisar para continuar acrescentando a saída do comando ao final do arquivo.
Aqui está outro exemplo de envio da saída do ls comando como árvore de diretório, com subdiretórios listados recursivamente (o R parâmetro) e um arquivo por linha (o 1 parâmetro).
ls -1R > /Users/lorikaufman/TerminalOutput/dir_tree.txt
Então, usamos o gato comando, conforme mencionado anteriormente para visualizar o conteúdo do arquivo na janela Terminal.
cat /Users/lorikaufman/TerminalOutput/dir_tree.txt
Imprimir saída para tela e redirecioná-la para um arquivo
o > e >> os operadores não exibem a saída de um comando na tela. A saída é enviada apenas para um arquivo.
Se você deseja enviar a saída para um arquivo e vê-lo na tela, use o tee comando em vez do > e >> operadores.
Para usar o tee comando você deve canalizar a saída do comando que você está executando, como ls , ao tee comando, usando o operador de tubo, uma barra vertical ( | ) Por exemplo, o comando a seguir obtém a saída do ls comando e canaliza-o para o tee comando. o tee o comando então envia essa saída para a tela e para um arquivo que você especifica usando o caminho completo para o arquivo.
como gravar um vídeo de um site
ls | tee /Users/lorikaufman/TerminalOutput/ls_output.txt
O comando acima substitui todo o conteúdo do arquivo ou cria um novo se ele não existir, assim como o > operador. Usamos o seguinte gato comando para ver o conteúdo do nosso arquivo na janela do Terminal.
cat /Users/lorikaufman/TerminalOutput/ls_output.txt
Para usar o tee para imprimir a saída na tela e anexá-la ao final de um arquivo, digite o seguinte comando. Aqui, estamos adicionando informações completas do sistema ao final do arquivo usando o uname -a comando, assim como fizemos com o >> operador, mas enviando a saída para a tela também.
uname -a | tee -a /Users/lorikaufman/TerminalOutput/ls_output.txt
O seguinte comando é o tee versão de imprimir uma árvore de diretório recursivamente para um arquivo e para a tela, um arquivo em cada linha, assim como fizemos com o > operador.
ls -1R | tee /Users/lorikaufman/TerminalOutput/dir_tree.txt
Então, usamos o gato comando novamente para ver o conteúdo do arquivo.
cat /Users/lorikaufman/TerminalOutput/dir_tree.txt
Mas espere, tem mais
Existem muitas outras maneiras de redirecionar a saída, incluindo erros, para um arquivo. Você pode ler sobre os diferentes operadores e comandos usados para redirecionar a saída no Capítulo de redirecionamento de E / S do Guia de script de Bash avançado .
Os usuários de Mac também devem marcar nossa folha de dicas de comandos do Mac Terminal .
Compartilhado Compartilhado Tweet O email Exclua esses arquivos e pastas do Windows para liberar espaço em discoPrecisa liberar espaço em disco no seu computador Windows? Aqui estão os arquivos e pastas do Windows que podem ser excluídos com segurança para liberar espaço em disco.
Leia a seguir Tópicos relacionados- Linux
- Mac
- janelas
- terminal
- Linux Bash Shell
Lori Kaufman é redatora técnica freelance que mora na área de Sacramento, Califórnia. Ela é uma geek de gadgets e tecnologia que adora escrever artigos sobre uma ampla variedade de tópicos. Lori também adora ler mistérios, ponto cruz, teatro musical e Doctor Who. Conecte-se com Lori no LinkedIn .
Mais de Lori KaufmanAssine a nossa newsletter
Junte-se ao nosso boletim informativo para dicas de tecnologia, análises, e-books grátis e ofertas exclusivas!
Clique aqui para se inscrever