>
redireciona os dados de stdout
(leia a saída padrão) para um arquivo.
ls -a > my-files.txt
pegará a saída de ls -a
e a colocará em um arquivo chamado my-files.txt
excluindo / sobrescrevendo o arquivo, se existir. Usar >>
em vez de >
no exemplo acima não sobrescreverá o arquivo se ele existir, mas adicionará a saída de ls -a
ao final de my-files.txt
<
, por outro lado, envia dados para um programa stdin
(read standard in).
Se eu tiver um arquivo chamado my-files.txt
e eu quiser saber quantas palavras ele contém, posso enviá-lo para um programa chamado wc
. Este programa aceita dados no seu stdin
so para os dados que eu faço
wc -w < my-files.txt
E por último, se eu quiser salvar a saída desse comando para um novo arquivo, posso usar os dois como assim
wc -w < my-files.txt > wordcount.txt