
paulo1205
(usa Ubuntu)
Enviado em 14/02/2013 - 09:38h
Os "operadores de redirecionamento" são um recurso do shell, não do programa em C. Todo programa que leia ou escreva, respectivamente, da entrada de dados padrão ou das saídas padrões de dados e de erros podem ter essas entrada e saídas redirecionadas externamente, no momento da execução, pelo shell ou outro aplicativo que porventura o execute.
Mas se você quiser implementar operações de redirecionamento dentro do seu programa, sem passar pelo shell, aí sim você pode precisar de
popen(3) e
pipe(2), se quiser que a saída de um programa sirva como entrada para outro (como se faria, no shell, com o operador "|"). Já o efeito de ler ou escrever para arquivos (equivalentes a "<", ">" e ">>") se consegue simplesmente com
fopen(3).