Reescribir ls (linux) en c

bibounder -  
Sugel Mensajes publicados 4293 Fecha de registro   Estado Miembro Última intervención   -
Hola,
tengo un proyecto que realizar, con el objetivo de volver a codificar el comando "ls" que se encuentra en Linux.
Está bien, este tema ya ha sido tratado en otros foros, pero el problema es que no tenemos derecho a utilizar printf, scanf y todas las demás funciones que nos facilitarían la vida.
No sé absolutamente por dónde empezar. Gracias de antemano.

4 respuestas

fiddy Mensajes publicados 441 Fecha de registro   Estado Colaborador Última intervención   1 847
 
Hola,

Deberías ver exactamente a qué tienes derecho...
¿Funciones del sistema (como read())? ¿Algunas funciones estándar (como fread())?
Etc.
Saludos,
--

Google es tu amigo
0
sambia39 Mensajes publicados 610 Fecha de registro   Estado Miembro Última intervención   50
 
Buenas noches
Para comenzar, "LS" no es una función sino un programa que se utiliza para listar un directorio y que toma argumentos; si otras funciones están prohibidas, entonces puedes utilizar write, por ejemplo.

--
Todo conocimiento es una respuesta a una pregunta.
0
fiddy Mensajes publicados 441 Fecha de registro   Estado Colaborador Última intervención   1 847
 
Nadie dijo que ls era una función ;-).
Luego hay que ver si fwrite() o write() están permitidos...
Y otros también como readdir() y compañía.
0
sambia39 Mensajes publicados 610 Fecha de registro   Estado Miembro Última intervención   50
 
No está mal :-)
pero bueno, si solo se trata de printf y compañía, el resto está autorizado.
0
fiddy Mensajes publicados 441 Fecha de registro   Estado Colaborador Última intervención   1 847
 
Todo depende de lo que entienda por "compañía"... Pienso especialmente en las funciones del sistema.
0
sambia39 Mensajes publicados 610 Fecha de registro   Estado Miembro Última intervención   50
 
Entonces, si este es el caso, pasemos por la función
 int printk() 

pero atención, esta está reservada para el sistema mismo, el núcleo, los controladores, etc.
0
fiddy Mensajes publicados 441 Fecha de registro   Estado Colaborador Última intervención   1 847
 
Si las funciones del sistema están permitidas, entonces usa la función write() que tiene el mérito de ser POSIX. De ahí mi primer post :-))).
0
Sugel Mensajes publicados 4293 Fecha de registro   Estado Miembro Última intervención   728
 
Tú, ¡estás en epitech, tú!

Empieza por recodificar getchar y putchar, funciones que te permiten respectivamente obtener y mostrar un carácter.

Luego, busca en las API del sistema, para listar un directorio.

Finalmente, tendrás que trabajar con estructuras y listas enlazadas...

¡Te dejo buscar!

--
------------------------------------------------------------------------------------
"El miedo lleva a la ira. La ira lleva al odio. Y el odio ... lleva al sufrimiento." - Yoda
0
Thomato87 Mensajes publicados 117 Estado Miembro 16
 
A Epitech ya han entregado este tema, creo que es más bien de 42 ;)
0
Sugel Mensajes publicados 4293 Fecha de registro   Estado Miembro Última intervención   728
 
¡Posible!
0