redireccionamento dup2

askno

Power Member
Código:
int fd;
fd = open ("fich_saida.txt",O_CREAT|O_WRONLY, 0666);
dup2 (fd, STDOUT_FILENO);
printf ("Ola Mundo\n");

Pronto aqui ele manda para o ficheiro "fich_saida.txt" o que foi escrito no printf
-----------------------------------------------------------------------------
Agora ao contrário é que não estou a perceber como faço tipo não tou bem a perceber é suposto ele copiar do teclado o que exactamente? O scanf nao dá dado que o sdin_fileno ta a apontar para o fd, nao tou bem a perceber o objectivo neste caso do redirecionamento, é suposto criar um processo filho que faça isto e no pai fazer um scanf?
Se me puderem dar umas luzes.. Obrigado abraços

Código:
int fd;
char string[50];
fd = open ("fich_saida.txt",O_CREAT|O_WRONLY, 0666);
dup2 (fd, STDIN_FILENO);
scanf ("%s", &string);
 
Última edição pelo moderador:
A ideia não será o scanf ler do ficheiro?O scanf le do stdin...Como alterast o stdin po ficheiro, ele lê do ficheiro...nao? Tal como dissest é o conceito inverso...
 
Back
Topo