C/Visual C - ¿Cómo hacer un dir |more ?

 
Vista:

¿Cómo hacer un dir |more ?

Publicado por Bea (3 intervenciones) el 06/11/2006 21:35:22
Hola a todos estoy intentado hacer una sentencia que me muestre por consola el contenido del directorio actual (creo que se debe utilizar una llamada a system pero no lo tengo muy claro, tampoco como conseguir el | more).
Agradecería una ayudita.

Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:¿Cómo hacer un dir |more ?

Publicado por Fran (122 intervenciones) el 07/11/2006 21:38:28
que sistema operativoestas usando... y | more es un pipeline?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¿Cómo hacer un dir |more ?

Publicado por Bea (3 intervenciones) el 08/11/2006 10:08:03
Estoy utilizando Linux con una liveCd de Ubuntu y tengo que hacer una rutina en C que muestre el contenido del directorio activo paginado y después comprobar que llamadas al sistema realiza dicha rutina.

Estoy bastante pez en C, agradecería la ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¿Cómo hacer un dir |more ?

Publicado por Tom (17 intervenciones) el 08/11/2006 11:45:07
No sólo hay que conocer C, hay que conocer un poco el S.O. (díselo a tu "profe" si hace falta).

Puedes probar con system("ls | less"); Si esto no funciona, utiliza popen("ls") (más o menos, mírate el manual) para obtener el descriptor de fichero correspondiente a la salida estandar del ls; luego irás leyendo y paginarás desde tu programa.

Para ver las llamadas al sistema, deberás utilizar ptrace, strace, ltrace, truss ... (no sé cual llevará Ubuntu)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¿Cómo hacer un dir |more ?

Publicado por Bea (3 intervenciones) el 08/11/2006 18:19:40
Estoy con Ubuntu y he probado con system("ls | more"), el Ubuntu lleva strace para ver las llamadas al sistema; muchas gracias por la ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar