• Jueves 14 de Noviembre de 2024, 18:51

Autor Tema:  Ayuda Con Unix Help System  (Leído 1417 veces)

amedinadiaz

  • Nuevo Miembro
  • *
  • Mensajes: 20
    • Ver Perfil
Ayuda Con Unix Help System
« en: Martes 2 de Diciembre de 2003, 15:45 »
0
Bueno, esto es lo que me piden, se como se hace en general, solo necesito que me ayudeis en como hago para que cuando salga esto:

Introduce el comando que quieres ver su descripcion: cd

Me salga esto, todo con strings multidimensionales.
cd - command directory

aki teneis la descripcion del programa x si acaso(esta en ingles)

B. Write a program to implement an interactive help system, to train users in the “Unix” operating system. The following example gives the Unix command names that will be stored in the help system, together with their description. You do not need any knowledge of Unix to write the program.

Command   Description
ls                list files in a directory
cd              change directory
mv              rename or move files to another directory
cp               copy files
rm              delete files
more          display the contents of files

Your program should be able to carry out the operations as outlined in the menu below. See below for sample output. Output for options 3 and 4 should be of similar format. Your program should generate an error message if the user enters a menu option other than 1-5.

Welcome to the Unix help system.
1 - look up a command
2 - search for words in the description
3 – display all commands
4 – display all commands and descriptions
5 - quit

Your choice: 1

Enter command name to look up: cd
cd - change directory

Your choice: 2

Enter a word to search for: directory
The following entries contain the word 'directory':
ls
cd
mv
.
.
.
Your choice: 5

End of program

Hint: The commands and descriptions should each be stored as strings, at initialisation.
The command strings should be stored in one array and the descriptions should be stored in another.
------------------

Entiendo la estructura perfectamente, con un switch keda perfecto pero es problema es que no se como hacerlo con los arrays que me piden, alguna sugerencia x favor? Me juego la nota de un semestre!!
He visto cosas que vosotros no creeriais...
Todos esos momentos...se perderan en el tiempo...
como lagrimas en la lluvia...

Por no comprarme la dichosa camara digital!!

bench

  • Miembro activo
  • **
  • Mensajes: 36
    • Ver Perfil
Re: Ayuda Con Unix Help System
« Respuesta #1 en: Miércoles 3 de Diciembre de 2003, 12:31 »
0
Hasta donde entiendo quieres hacer un menu de ayuda parecido al man del unix:

La primera parte es sencikka por que despliegas un menu con las opciones que deseas presentar:


potdrias manejar un archivo de texto donde colocas todos las comandos con una pequeña descripcion, ordenado alfabeticamente. y lo presentas cuando la opcion sea presentar todos los comandos.

cuando la opcion sea pedir un comando especifico, ya la cosa se complica, por que deberas encontrar un metodo de busqueda, que podria der recorrer un arreglo de estructuras en forma secuencial, donde colocas en un elemento el nombre del comando, en el segundo elemento una breve descripcion y en el tercer elemento un archivo de texto donde colocas toda la descripcion y la sintaxis del comando

por ejemplo defines

#define NUMERO_COMAND 100
struct Ayuda
 ABRES CORCHETES
    char Comando[12]; //Nombre del Comando
    char Descripcion[81]; //Breve descripcion
    char Pathname[81]; //Archivo de texto donde se describe como funciona
 CIERRAS CORCHETE; Comandos[NUMERO_COMAND];


Con Comando[0].Comando Accederias al Nombre del Comando
Con Comando[0].Descripcion Accederias a la breve descripcion
Con Comando[0].Pathname Accederias al Nombre del archivo que contiene la descripcion completa del del comando el cual podrias presentarlo en pantalla

haces un for por ejemplo para comparar el nombre del comando solicitado con el que se encuentra en la estructura, presentas su nombre con una breve descripcion y la posibilidad de presentar el archivo de texto que lo descrive en detalle

Espero te sirva la informacion
Saludos Bench

amedinadiaz

  • Nuevo Miembro
  • *
  • Mensajes: 20
    • Ver Perfil
Re: Ayuda Con Unix Help System
« Respuesta #2 en: Miércoles 3 de Diciembre de 2003, 13:28 »
0
Gracias pero al final descubri que la lbireria string.h tiene una funcion mu "bonika":P q se llama strcmp y que compara 2 strings, asi que al final me salio mucho mas facil! Aqui dejo el codigo: (x si alguien necesita algo parecido)

   printf("Enter command name to look up:");
                scanf("%s", com2);
   for(i=0; i<6; i++)
   {
          t= strcmp(com2[0], commands);
          if(t==0)
      printf("%s %s\n", commands, descriptions);   
   }

Declarando t como integer. Espero que a alguien le sirva de ayuda;)

Ahora mi problema es el apartado 2 :( no tengo ni idea de como hacerlo, agradeceria cualkier ayuda.
He visto cosas que vosotros no creeriais...
Todos esos momentos...se perderan en el tiempo...
como lagrimas en la lluvia...

Por no comprarme la dichosa camara digital!!

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Ayuda Con Unix Help System
« Respuesta #3 en: Miércoles 3 de Diciembre de 2003, 20:01 »
0
Echare una ojeada, en todo caso, trata de no escribir palabras groceras en el foro... :ph34r:
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io