Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Uso de PIPE.

Estas en el tema de Uso de PIPE. en el foro de C/C++ en Foros del Web. Buenas, qué tal: Me han encargado realizar un programa en lenguaje C que no sé cómo comenzar. Se trata de implementar un programa que acepte ...
  #1 (permalink)  
Antiguo 19/01/2010, 09:54
 
Fecha de Ingreso: diciembre-2009
Mensajes: 51
Antigüedad: 14 años, 4 meses
Puntos: 1
Uso de PIPE.

Buenas, qué tal:

Me han encargado realizar un programa en lenguaje C que no sé cómo comenzar.

Se trata de implementar un programa que acepte tres o más argumentos (dos programas u órdenes como mínimo y un fichero de salida) y los conecte mediante una serie de PIPE (tuberías). El programa deberá ejecutar todas las instrucciones recibidas como parámetros redireccionando la salida del primer argumento con la entrada del segundo argumento, la salida del segundo argumento con la entrada del tercero, y así sucesivamente; para ello se deberán crear tantos procesos como sea necesario. Una vez se haya ejecutado la última instrucción, un proceso deberá guardar el contenido recibido en un fichero de salida.

La llamada a dicho programa será la siguiente:

./tubería <instruccion1> -. <instruccion2> -. … -. <instruccionN> ficheroSalida.txt

Por ejemplo:

./tubería ls -. sort -. wc –l ficheroSalida.txt

Entre cada instrucción y cada “-.” existe un espacio. Si al programa se le pasa como argumento un número menor a 2 instrucciones, un parámetro erróneo o no se incluye el fichero de salida, se mostrará un mensaje de error por pantalla indicándolo.

Tengo que utilizar las llamadas pipe, waitpid, dup y close para el encaminamiento de las PIPE. Las órdenes irán separadas por “-.” para diferenciarlas de los argumentos.

Si alguien sabría como comenzar o si tiene algo parecido implementado, que lo postee si no es demasiada molestia.

Gracias de antemano.
  #2 (permalink)  
Antiguo 31/01/2010, 07:03
Avatar de genuine_carlosV2  
Fecha de Ingreso: noviembre-2008
Ubicación: 127.0.0.1
Mensajes: 296
Antigüedad: 15 años, 5 meses
Puntos: 6
Respuesta: Uso de PIPE.

Buenas,

Sinceramente, no tengo ni idea de como comenzar, pero yo comenzaría por descargar y echar una ojeada a la shell de linux bash. Yo lo analicé una vez (un poco por encima) y quizás de aquí puedas sacar una idea de como hacerlo.

Saludos y suerte

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:36.