Blog de Berto

Una Shell en lenguaje C [Intérprete de Comandos].

por el día Oct.03, 2007, bajo Informática, Interesante

Bueno, esto para los futuros informáticos/as y para la gente que está aprendiendo C en general, dejo aquí una práctica que tuve que hacer en la asignatura de Sistemas Operativos de 1º de Ingeniería en Informática. La práctica consiste en crear una Shell o Intérprete de Comandos para linux en C, el enunciado dice así:

Enunciado

Realice un programa que liste los ficheros del directorio en curso y después muestre por pantalla el mensaje FIN DE PROGRAMA.Realice un interprete de comandos reducido. La función básica de este interprete de comandos será pedir un comando o programa, ejecutarlo y volver a pedir otro comando. El programa terminará cuando se teclee el comando FIN.

El ordinograma del programa será:
Ordinograma.

Requisitos:

a) Los comandos o programas se ejecutarán poniendo la ruta absoluta
b) Si el comando o programa no tiene ruta absoluta se supondrá que se encuentra en el directorio
directorio /bin.
c) Si el comando o proceso no se ejecuta correctamente se visualizará el mensaje de error.
d) El interprete de comandos quedará bloqueado hasta que termine el programa .
e) El interprete de comandos tendrá el siguiente prompt :
#@>
OPCIONAL:
f) Permitir que ejecute un comando o programa en segundo plano si el programa termina con &.
g) Cualquier otra opción se valorará

Después de todo esto, finalmente mi shell cumple todos los requisitos, y además le añadí una serie de extras como por ejemplo tuberías ( pipes ) , redireccionamiento de entrada y salida… etc.

Aquí tenéis la documentación y el código, espero que os sea de utilidad.

3 Comentarios para esta entrada:
  1. Homeserve

    I would like to thank you for the efforts you’ve put in writing this web site. I’m hoping the same high-grade blog post from you in the upcoming as well. Actually your creative writing abilities has inspired me to get my own blog now. Actually the blogging is spreading its wings fast. Your write up is a great example of it.

  2. Paint

    Helpful info. Fortunate me I found your site unintentionally, and I am surprised why this coincidence did not happened in advance! I bookmarked it.

  3. Wedding Ideas

    Thank you a lot for providing individuals with an exceptionally pleasant chance to check tips from here. It’s usually so beneficial and packed with a great time for me and my office fellow workers to visit the blog not less than thrice weekly to see the latest issues you have. And indeed, I am just at all times impressed concerning the excellent principles you serve. Selected two ideas on this page are definitely the most impressive I have had.

Leave a Reply

Buscas algo?

Usa el formulario de búsqueda:

No encuentras lo que buscas? Deja un comentario en un post o contacta conmigo vía email.