Hola, este es mi problema:
Intento redirigir la salida estandar a un fichero para escribir DESDE EL FINAL de éste:
int stdoutRedir2(const char *fichName){
int fd=open(fichName,O_APPEND);
int nuevoFd=-1;
if(fd<1){
fd=creat(fichName,0644);
}else{
nuevoFd=dup2(fd,1);
}
close(fd);
return nuevoFd;
}
"error de escritura: Descriptor de archivo erróneo"
¿Alguien sabe por qué?
Y no puedes usar el fprintf de toda la vida?
No porque tengo que direccionar la salida de un mandato de linux al fichero en cuestión. Y la salida de los mandatos siempre es el descriptor 1 (stdout)