Isso funciona bem em qualquer sistema operacional, do Linux e MacOS ao ambiente bash baseado no Ubuntu do Windows 10.
Opção 1: Redirecionar saída para um arquivo somente
Para usar o redirecionamento bash, você executa um comando, especifica o
>
ou
>>
operador e, em seguida, forneça o caminho de um arquivo para o qual você deseja que a saída seja redirecionada.
-
>
redireciona a saída de um comando para um arquivo, substituindo o conteúdo existente do arquivo.
-
>>
redireciona a saída de um comando para um arquivo, anexando a saída ao conteúdo existente do arquivo.
Tecnicamente, isso redireciona “stdout” - a saída padrão, que é a tela - para um arquivo.
Aqui está um exemplo simples. o
ls
comando lista arquivos e pastas no diretório atual. Assim. quando você executa o seguinte comando,
ls
listará arquivos e pastas no diretório atual. Mas isso não será impresso na tela. Ela será salva no arquivo que você especificar.
ls > /path/to/file
Você não precisa especificar o caminho para um arquivo existente. Especifique qualquer caminho válido e o bash criará um arquivo nesse local.
ls
saída do comando. Por exemplo, o
cat
comando imprime o conteúdo de um arquivo no terminal:
cat /path/to/file
>
O operador substitui o conteúdo existente do arquivo pela saída do comando. Se você quiser salvar a saída de vários comandos em um único arquivo, use o
>>
operador em vez disso. Por exemplo, o comando a seguir anexará informações do sistema ao arquivo especificado:
uname -a >> /path/to/file
Se o arquivo ainda não existir, o bash criará o arquivo. Caso contrário, o bash deixará o conteúdo existente do arquivo sozinho e anexará a saída ao final do arquivo.
Ao visualizar o conteúdo do arquivo, você verá os resultados do segundo comando serem anexados ao final do arquivo:
Opção 2: imprimir saída normalmente e redirecioná-la para um arquivo
Você pode não gostar de redirecionar a saída com o
>
ou
>>
operadores, pois você não verá a saída do comando no terminal. Isso é o que o
tee
comando é para. O comando tee imprime a entrada que recebe na tela e salva em um arquivo ao mesmo tempo.
Para canalizar a saída de um comando para
tee
imprimindo-o na tela e salvando-o em um arquivo, use a seguinte sintaxe:
command | tee /path/to/file
Isto irá substituir qualquer coisa no arquivo com a saída do comando, assim como o
>
operador.
tee
imprimindo para a sua tela e salvando-o em um arquivo, mas anexando-o ao final do arquivo:
command | tee -a /path/to/file
Isto irá acrescentar a saída ao final do arquivo, assim como o
>>
operador.