25/08/2009, 02:40
|
| | Fecha de Ingreso: agosto-2009
Mensajes: 8
Antigüedad: 15 años, 4 meses Puntos: 0 | |
Respuesta: Ayuda con una funcion para una minishell en C Buenos dias, en primer lugar muchisimas gracias por responder tan rapido, el problema estaría en que ya devuelve "1" en caso que haya redirección (es la condifición que meto primero en un if en la función donde ejecuto el metodo de la redirección). Te dejo aqui como tengo esa parte obviando detalles anteriores que no influyen aunque estén dentro de la función:
MandatoSimple(char ***argvv, char *filev[3], int bg){
.
.
.
if (hayRedireccion(filev) == 1){
____switch (tipo){
______ // miramos si hay que hacer una redirección de la entrada (<)
______ case 1:
________if ((fd_in = open(filev[0], O_RDONLY)) == -1){
__________ perror(" ERROR al tratar de abrir la redirección de entrada para ejecutar un mandato simple");
__________ exit(1);
________}
.
.
.
____}
.
.
.
Nota: los "_" los he utilizado a modo de espacio a la izquierda del inicio del código para que se viera mejor la estructura.
Entonces si te entendi bien lo que me comentabas era de añadir el tipo a la cabecera de la función hayRedireccion(), pero el problema sería que la utilidad de ello es unicamente para hallar si hay algún tipo de redirección no decirle una redirección
Sobre los switch te doy toda la razón así será bastante mejor, ya lo he cambiado.
Muchas gracias de nuevo por tu rápida respuesta |