Capturar dados do Terminal [RESOLVIDO]

1. Capturar dados do Terminal [RESOLVIDO]

Roberto Candido de Oliveira Júnior
robertoj

(usa Slackware)

Enviado em 19/07/2010 - 11:20h

Bom dia.
Estou com a seguinte duvida.
Preciso executar uma aplicação em linguagem C, após o término da execução, preciso analisar as saídas do terminal para verificar se houve algum erro.
Funcionaria da seguinte maneira, eu devo desenvolver uma aplicação em qualquer linguagem, dentro dela eu vou debugar uma outra aplicação utilizando o Valgrind, caso ocorra algum erro escrevo em uma variável de ambiente o valor 1 caso não ocorra erro escrevo o valor 0.
Como eu pego os dados impressos no terminal? para poder analisa-los.

Obrigado pela atenção
att., Roberto


  


2. Resposta

Lucas Lira Gomes
llg

(usa Arch Linux)

Enviado em 19/07/2010 - 11:35h

Bem Roberto, creio que ha duas opcoes, ou voce escreve a saida em arquivos (Usando programacao) e ai analiza, ou voce redireciona a saida para algum arquivo na mao (./progama >> saida.txt) toda vez que executar. Eu acredito ser melhor usar arquivos ^^, caso tenha duvida com a implementacao em C/C++ pode me contactar.

Espero ter ajudado, Lucas Lira Gomes.


3. teste

Roberto Candido de Oliveira Júnior
robertoj

(usa Slackware)

Enviado em 19/07/2010 - 13:33h

Muito Obrigado, eu sou novato no linux uashauh tenho que aprender os macetes.
eu fiz o teste, executei o seguinte comando:
valgrind ./a.out >> saida.txt
Não aparece o menu que eu criei, até ai tudo bem, mas no arquivo texto foi escrito as saídas do meu aplicativo, eu preciso mesmo das saídas do valgrind.
Dai eu fiz outro teste, criei um outro aplicativo (chamado teste.c) e nele eu coloquei o seguinte comando system("valgrind ./a.out");
e no terminal fiz o seguinte teste >> saida.txt
obtive o mesmo resultado, ele escreve no arquivo as saidas do aplicativo e não do valgrind.


4. Re: Capturar dados do Terminal [RESOLVIDO]

Lucas Lira Gomes
llg

(usa Arch Linux)

Enviado em 19/07/2010 - 13:52h

Aw, agora entendi melhor seu problema, bem tenta assim:

valgrind -v ./a.out >& saida.txt

Isso vai redirecinar tanto a saida normal como a saida de erros, se o valgrind usar a saida de erros vai funcionar!!!

Atenciosamente, Lucas Lira Gomes


5. teste

Roberto Candido de Oliveira Júnior
robertoj

(usa Slackware)

Enviado em 19/07/2010 - 14:14h

Valew, era isso mesmo.
Toda a saída está indo para o arquivo texto, ainda não exibe no terminal, mas assim já da para eu trabalhar os dados.
Deixa eu tirar mais uma dúvida, eu devo alterar o valor de uma variável de ambiente quando o valgrind encontrar erros, a variável $? mas ela não aceita os valores, para mudar para o valor 0 quando não tem erro e valor 1 quando tem, o que devo fazer?.


6. Re: Capturar dados do Terminal [RESOLVIDO]

Lucas Lira Gomes
llg

(usa Arch Linux)

Enviado em 19/07/2010 - 14:25h

Bem isso eu ja nao sei ^^.

Atenciosamente, Lucas Lira Gomes


7. teste

Roberto Candido de Oliveira Júnior
robertoj

(usa Slackware)

Enviado em 19/07/2010 - 14:27h

Ok, muito obrigado.
Não tinha idéia de como fazer esta parte, agora já estou encaminhado.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts