• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Llaverola

Chamadas ao sistema em C avançado no linux...COMO ESCREVER PARA UM FICHEIRO?

3 mensagens neste tópico

bem, a minha duvida tem a ver com programação em linux avançada.

fix um trabalho, onde tive de criar 4 pipes e 5 filhos (forks e pipes).

cada filho troca uma vogal.

ou seja o 1º filho muda a vogal "a", o segundo a vogal "e" e por aí a diante. no ultimo ficlho é imprimido pro terminal a string com as vogais em maiusculas q é o k cada filho faz ( passar a vogal respectiva para maiuscula"

agora sei que com o comando:

./work < testefile.txt

em vez de escrever pro terminal escreve pro ficheiro...

como fazer isso? sei q é no ultimo filho, estou a csg criar o ficheiro, so n csg escrever para ele, obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para escreveres para o ficheiro tens de fazer o contrário, usando o >.

system("ls > ficheiro.txt")  (a listagem dos ficheiros no presente directório é escrita para o ficheiro ficheiro.txt)

Mas isso depende de como tenhas isso, é difícil dizer-te sem saber ao certo o que estás a fazer.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

eu usei algo do genero:

FILE * fd;

close(fds4[0]);

fd = open("testfile.txt",O_WRITE|O_READ,0664);

dup2(fd,1);

fds4 é o pipe que liga o 4º filho ao 5º ou seja, o da letra "o" À letra "u".....

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora