Linguagem C e operadores de redirecionamento

1. Linguagem C e operadores de redirecionamento

Renan Novaes
zerotres

(usa Outra)

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


  


2. Re: Linguagem C e operadores de redirecionamento

Vitor Luis
VitorLuis

(usa Ubuntu)

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

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






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts