Operadores de redirecionamento são fundamentos essenciais no mundo *NIX, tanto que quase todo shell script mais avançado usa e abusa desse recurso. Para descobrir o que cada um dos operadores faz, você pode dar uma olhadinha neste artigo.
A função deste operador é o contrário do >: ao invés de mandar a saída do comando para o arquivo, ele manda o arquivo como entrada do comando. Não entendeu? Dê uma olhadinha:
$ less
Vai
digitando
qualquer
coisa
aqui
^D
Então aparecerá o "less" listando o texto página a página. O ^D no final, quer dizer, "Ctrl+D", significa "Fim de arquivo".
Agora tente fazer um arquivo com o nome de "teste", digita qualquer coisa e tenta então:
$ less < teste
(saída do comando less)
Seria o mesmo que você digitar tudo que tem no arquivo como entrada, mas como o pessoal do Unix tem bom senso :), eles automatizaram isso. O ^D também é automatizado.
Este operador pode facilmente ser substituído pelo pipe (|), junto com o comando 'cat'.
[3] Comentário enviado por pop_lamen em 18/11/2004 - 14:48h
Bom o artigo, mas faltou muita coisa....
Por exemplo faltou cobrir o redirecionamento de fluxo para devices,
exemplo:
echo fuck > /dev/null
dentre outors.
Mas mesmo assim ta valendo, t+!
[4] Comentário enviado por jllucca em 19/11/2004 - 13:31h
Olá,
cara o artigo ta excelente. Só discordo do "2>" ser um operador. No mundo *nux, nós temos normalmente três arquivos abertos(não tenho certeza da ordem stdin e stdout): 0(stdin), 1(stdout), 2(stderr). Assim, quando fazemos "2>algo" estamos fazendo o dispositivo "/dev/stderr" enviar suas mensagens para algo. Essa parte teria sido uma ótima ancora pra voce falar de redirecionamento para dispositivos como o pop_lamen já comentou. Assim, voce, ao inves de stderr, poderia usar:
[7] Comentário enviado por Stuani255 em 27/05/2016 - 11:30h
Alguem pode dar um exemplo usando redirecionamento criando um arquivo txt? Estou começando agora a aprender shell script e pra mim esses comandos são meio vagos.