Necesito atyuda urgente
hola espero que puedan ay, necesito hacer el siguiente programa pero no tengo la menor idea de como hacerlo
Programa a realizar:
El shell o Interprete de Comandos es la interface fundamental de un Sistema Operativo. El programa a realizar es un shell simple que tenga las siguientes propiedades:
El shell debe soportar los siguientes comandos internos:
cd <directorio> - cambia el directorio actual al indicado por <directorio>. Si el argumento <directorio> no esta presente, debe reportar el directorio actual. Si no existe entonces debe indicarse con un mensaje de error. Este comando debe también cambiar la variable de ambiente PWD
dir <directorio> - lista el contenido del directorio <directorio>. Si al argumento <directorio> no esta presente, debe mostrar el contenido del directorio actual.
clr – limpia la pantalla
environ – lista las variables de ambiente seguidas de su contenido
echo <comentario> - despliega <comentario> en la pantalla seguido de un avance de línea. Debe poderse mostrar el contenido de las variables de ambiente cuando se les anteponga el símbolo $.
pwd – indica el directorio actual
quit - sale del shell
El ambiente del shell debe contener las siguientes variables:
SHELL – esta debe contener la ruta absoluta a su programa ejecutable
PATH – esta contiene las rutas donde se buscaran los comandos externos, su valor debe ser /bin:/usr/bin:/sbin:/usr/sbin:.
HOME – esta contiene la ruta al directorio de usuario, la cual será inicializada al directorio desde donde se ejecute el shell
PWD – esta contiene el directorio actual
Todas las otras entradas de comando serán interpretadas como una invocación de comandos externos ó programas ejecutable que deben ser realizadas usando las llamadas al sistema fork y exec para crear un proceso hijo que ejecute el programa invocado (ó con cualquier llamada al sistema similar que exista en el lenguaje de su elección, también si desean lo podrían hacer a nivel de hilos en vez de procesos).
El indicador del shell debe contener la ruta del directorio actual.
El shell debe ser realizado para funcionar bajo ambiente UNIX.
REQUERIMIENTOS
No puede hacer uso de funciones tal como system (ó cualquier otra similar) con la única posible excepción del comando clr. Esto significa que los comandos internos deben ser manejados con código escrito por uno, no por comandos ya proporcionados por el sistema operativo.
Programa a realizar:
El shell o Interprete de Comandos es la interface fundamental de un Sistema Operativo. El programa a realizar es un shell simple que tenga las siguientes propiedades:
El shell debe soportar los siguientes comandos internos:
cd <directorio> - cambia el directorio actual al indicado por <directorio>. Si el argumento <directorio> no esta presente, debe reportar el directorio actual. Si no existe entonces debe indicarse con un mensaje de error. Este comando debe también cambiar la variable de ambiente PWD
dir <directorio> - lista el contenido del directorio <directorio>. Si al argumento <directorio> no esta presente, debe mostrar el contenido del directorio actual.
clr – limpia la pantalla
environ – lista las variables de ambiente seguidas de su contenido
echo <comentario> - despliega <comentario> en la pantalla seguido de un avance de línea. Debe poderse mostrar el contenido de las variables de ambiente cuando se les anteponga el símbolo $.
pwd – indica el directorio actual
quit - sale del shell
El ambiente del shell debe contener las siguientes variables:
SHELL – esta debe contener la ruta absoluta a su programa ejecutable
PATH – esta contiene las rutas donde se buscaran los comandos externos, su valor debe ser /bin:/usr/bin:/sbin:/usr/sbin:.
HOME – esta contiene la ruta al directorio de usuario, la cual será inicializada al directorio desde donde se ejecute el shell
PWD – esta contiene el directorio actual
Todas las otras entradas de comando serán interpretadas como una invocación de comandos externos ó programas ejecutable que deben ser realizadas usando las llamadas al sistema fork y exec para crear un proceso hijo que ejecute el programa invocado (ó con cualquier llamada al sistema similar que exista en el lenguaje de su elección, también si desean lo podrían hacer a nivel de hilos en vez de procesos).
El indicador del shell debe contener la ruta del directorio actual.
El shell debe ser realizado para funcionar bajo ambiente UNIX.
REQUERIMIENTOS
No puede hacer uso de funciones tal como system (ó cualquier otra similar) con la única posible excepción del comando clr. Esto significa que los comandos internos deben ser manejados con código escrito por uno, no por comandos ya proporcionados por el sistema operativo.