Pular para o conteúdo

Linguagem C e operadores de redirecionamento

Responder tópico
  • Denunciar
  • Indicar

1. Linguagem C e operadores de redirecionamento

Enviado em 10/02/2013 - 15:22h

Estou escrevendo um programa para ser usado com os operadores de redirecionamento. Porém não sei como fazê-lo.
O programa deve ser capaz de trabalhar com os operadores '>' '>>' '<' '|'
Tal como cat nomeDoArquivo | grep palavra

Responder tópico

2. Re: Linguagem C e operadores de redirecionamento

Enviado em 10/02/2013 - 21:05h

Cara, para fazer redirecionamento ou pelo menos pegar a saída do STDOUT, você tem que criar um pipe com o processo que está executando o comando.

De uma olhada nese artigo:

http://howtolinux.com.br/?p=311

3. Re: Linguagem C e operadores de redirecionamento

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).

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder