SlideShare una empresa de Scribd logo
1 de 8
Shell

                                     Resumen creación

Grupo: Épsilon

Este trabajo está realizado en lenguaje c y puede ser compilado con gcc tiene 6
funciones

Librerías a utilizar

       #include<stdio.h>      instrucciones del lenguaje

       #include<stdlib.h>     para llamadas al sistema

       #include<string.h> para trabajar con cadenas

       #include<time.h> para trabajar con fechas y horas

       #include<dirent.h> sirve para trabajar con archivos y directorios

Comandos creados para la Shell

hora --> muestra la hora del sistema

!!! --> muestra esta pantalla de ayuda

info --> muestra la información del sistema

laninfo --> muestra la información de la tarjeta de red

wlaninfo --> muestra la información de la tarjeta de red inalámbrica

limpiar --> limpia la pantalla de la Shell

usuario --> muestra el usuario del pc

apagareq --> apaga la pc

salir --> salir de la Shell

list --> listado de archivos contenidos en la carpeta actual

Captura de pantallas
1.- inicio shell




2.- ingreso de comandos
Y el comando apagareq

Apaga la pc
Código fuente

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <dirent.h>
voidingreso()
{
       char command[20];
       printf("# ");scanf("%s",&command);
       if (strcmp(command,"hora")==0)
       {
               hora();
       }
               else
               {
                       if (strcmp(command,"limpiar")==0)
                       {
                               system("clear");
                               ingreso();
                       }
                       else
                       {
                               if (strcmp(command,"!!!")==0)
                               {
                                       ayuda();
                                       ingreso();
                               }
                               else
                               {
                                       if (strcmp(command,"laninfo")==0)
                                       {
                                               laninfo();
                                               ingreso();
                                       }
                                       else
                                       {
                                               if (strcmp(command,"salir")==0)
                                               {
exit(1);
                                  }
                                  else
                                  {
                                         if (strcmp(command,"info")==0)
                                         {
                                                 info();
                                                 ingreso();
                                         }
                                         else
                                         {
                                                 if (strcmp(command,"list")==0)
                                                 {
                                                         listado();
                                                         ingreso();
                                                 }
                                                 else
                                                 {
                                                         if
(strcmp(command,"usuario")==0)
                                                      {
                                                             usuario();
                                                             ingreso();
                                                      }
                                                      else
                                                      {
                                                             if
(strcmp(command,"wlaninfo")==0)
                                                             {

      wlaninfo();
                                                                    ingreso();
                                                             }
                                                             else
                                                             {
                                                                    if
(strcmp(command,"apagareq")==0)
                                                                    {

      system("sudo halt");
                                                                    }
                                                                    else
{

      error(1);

      ingreso();
                                                                           }

                                                                    }
                                                             }
                                                      }
                                                }
                                         }
                                  }
                           }
                    }

             }
}

voidayuda()
{
       printf("Shell del sistema v0.1rc");
       printf("nhora --> muestra la hora del sisteman");
       printf("nlimpiar --> Limpia la pantallan");
       printf("n!!! --> Muestra esta pantalla de ayudan");
       printf("nlaninfo --> Muestra la información de la red cableadan");
       printf("nsalir --> Salir de la shelln");
       printf("ninfo --> muestra la información del siseman");
       printf("nlist --> Listar archivos en la presente carpeta");
       printf("nusuario --> Muestra el usuario que está actualmente conectado");
       printf("nwlaninfo --> Muestra información de la red wirelessn");
       printf("napagareq --> Apaga el sisteman");
}
inthora()
{
time_trawtime;
time ( &rawtime );
printf ( " %s", ctime (&rawtime) );
       ingreso();
}
void info()
{
system("./inform.sh");
}
voidlaninfo()
{
       system("ifconfig eth0");

}
voidwlaninfo()
{
        system("ifconfig wlan0");
}
voidlistado()
{
        structdirent **entradas= NULL;
        intnumeroEntradas;
        int i;
        numeroEntradas = scandir (".", &entradas, NULL, NULL);
        for (i=0; i<numeroEntradas; i++)
        {
               printf (" %s ", entradas[i]->d_name);
               free (entradas[i]);
               entradas[i] = NULL;
        }
        printf("n");
        free (entradas);
        entradas = NULL;
}
voidusuario()
{
        system("whoami");
}
int error( intnum_err )
{
        char *errores[] = {
               "No se ha producido ningún error",
               "Comando desconocido , escriba !!! para mostrar una lista de los
comandos",
               "No hay espacio en disco",
               "Me he cansado de trabajar"
               };
        printf( "Error número %i: %s.n", num_err, errores[num_err] );
        ingreso();
}
int main()
{
ingreso();
return 0;
}

Más contenido relacionado

La actualidad más candente

La actualidad más candente (15)

Ejemplos java
Ejemplos javaEjemplos java
Ejemplos java
 
calculadora en c sharp
calculadora en c sharpcalculadora en c sharp
calculadora en c sharp
 
Sistemas_Combinacionales
Sistemas_CombinacionalesSistemas_Combinacionales
Sistemas_Combinacionales
 
Universidad técnica de ambato
Universidad técnica de ambatoUniversidad técnica de ambato
Universidad técnica de ambato
 
Java
JavaJava
Java
 
Tema3 p2%20
Tema3 p2%20Tema3 p2%20
Tema3 p2%20
 
Swrewer nuevo hoy
Swrewer nuevo hoySwrewer nuevo hoy
Swrewer nuevo hoy
 
Ventilador adaptativo
Ventilador adaptativoVentilador adaptativo
Ventilador adaptativo
 
Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito
 
Robin riberoprograma2
Robin riberoprograma2Robin riberoprograma2
Robin riberoprograma2
 
NOTACIÓN POSTFIJA E INFIJA - JAVA
NOTACIÓN POSTFIJA E INFIJA - JAVANOTACIÓN POSTFIJA E INFIJA - JAVA
NOTACIÓN POSTFIJA E INFIJA - JAVA
 
Aplicación Cliente - Servidor / GUI - Consola
Aplicación Cliente - Servidor / GUI - ConsolaAplicación Cliente - Servidor / GUI - Consola
Aplicación Cliente - Servidor / GUI - Consola
 
Lista enlazada 2 parcial
Lista enlazada 2 parcialLista enlazada 2 parcial
Lista enlazada 2 parcial
 
Guia para examen java
Guia para examen javaGuia para examen java
Guia para examen java
 
22. c combin-ovejas
22. c combin-ovejas22. c combin-ovejas
22. c combin-ovejas
 

Similar a Shell en C con comandos básicos

Similar a Shell en C con comandos básicos (8)

Reporte viernes 24
Reporte viernes 24Reporte viernes 24
Reporte viernes 24
 
Shell
ShellShell
Shell
 
Practicas c++
Practicas c++Practicas c++
Practicas c++
 
Pila dinamica y pila estatica
Pila dinamica y pila estaticaPila dinamica y pila estatica
Pila dinamica y pila estatica
 
Ahorcado
AhorcadoAhorcado
Ahorcado
 
Andres quintal.doc
Andres quintal.docAndres quintal.doc
Andres quintal.doc
 
ESTRUCTURAS ARRAYS Y DATOS C++
ESTRUCTURAS ARRAYS Y DATOS C++ESTRUCTURAS ARRAYS Y DATOS C++
ESTRUCTURAS ARRAYS Y DATOS C++
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 

Más de Freddy Salazar Carrillo (20)

1 vectores-en-r3
1 vectores-en-r31 vectores-en-r3
1 vectores-en-r3
 
Hoja de vida
Hoja de vidaHoja de vida
Hoja de vida
 
El Debate
El DebateEl Debate
El Debate
 
Presentacion
PresentacionPresentacion
Presentacion
 
Propuesta portal cautivo
Propuesta portal cautivoPropuesta portal cautivo
Propuesta portal cautivo
 
Capitulo 8
Capitulo 8Capitulo 8
Capitulo 8
 
Capitulo 7
Capitulo 7Capitulo 7
Capitulo 7
 
Capitulo 6
Capitulo 6Capitulo 6
Capitulo 6
 
Gloosario
GloosarioGloosario
Gloosario
 
Qué es un servidor web
Qué es un servidor webQué es un servidor web
Qué es un servidor web
 
Consultaso
ConsultasoConsultaso
Consultaso
 
Deksi network administrator
Deksi network administratorDeksi network administrator
Deksi network administrator
 
Tarea 6
Tarea 6Tarea 6
Tarea 6
 
Metodologia Pacie
Metodologia PacieMetodologia Pacie
Metodologia Pacie
 
Secuencias de actividades
Secuencias de actividadesSecuencias de actividades
Secuencias de actividades
 
Creación de actividades
Creación de actividadesCreación de actividades
Creación de actividades
 
Creación de actividades 2
Creación de actividades 2Creación de actividades 2
Creación de actividades 2
 
Creación de actividades 3
Creación de actividades 3Creación de actividades 3
Creación de actividades 3
 
Creación de actividades 2
Creación de actividades 2Creación de actividades 2
Creación de actividades 2
 
Creación de actividades
Creación de actividadesCreación de actividades
Creación de actividades
 

Shell en C con comandos básicos

  • 1. Shell Resumen creación Grupo: Épsilon Este trabajo está realizado en lenguaje c y puede ser compilado con gcc tiene 6 funciones Librerías a utilizar #include<stdio.h> instrucciones del lenguaje #include<stdlib.h> para llamadas al sistema #include<string.h> para trabajar con cadenas #include<time.h> para trabajar con fechas y horas #include<dirent.h> sirve para trabajar con archivos y directorios Comandos creados para la Shell hora --> muestra la hora del sistema !!! --> muestra esta pantalla de ayuda info --> muestra la información del sistema laninfo --> muestra la información de la tarjeta de red wlaninfo --> muestra la información de la tarjeta de red inalámbrica limpiar --> limpia la pantalla de la Shell usuario --> muestra el usuario del pc apagareq --> apaga la pc salir --> salir de la Shell list --> listado de archivos contenidos en la carpeta actual Captura de pantallas
  • 2. 1.- inicio shell 2.- ingreso de comandos
  • 3. Y el comando apagareq Apaga la pc
  • 4. Código fuente #include <stdio.h> #include <stdlib.h> #include <string.h> #include <time.h> #include <dirent.h> voidingreso() { char command[20]; printf("# ");scanf("%s",&command); if (strcmp(command,"hora")==0) { hora(); } else { if (strcmp(command,"limpiar")==0) { system("clear"); ingreso(); } else { if (strcmp(command,"!!!")==0) { ayuda(); ingreso(); } else { if (strcmp(command,"laninfo")==0) { laninfo(); ingreso(); } else { if (strcmp(command,"salir")==0) {
  • 5. exit(1); } else { if (strcmp(command,"info")==0) { info(); ingreso(); } else { if (strcmp(command,"list")==0) { listado(); ingreso(); } else { if (strcmp(command,"usuario")==0) { usuario(); ingreso(); } else { if (strcmp(command,"wlaninfo")==0) { wlaninfo(); ingreso(); } else { if (strcmp(command,"apagareq")==0) { system("sudo halt"); } else
  • 6. { error(1); ingreso(); } } } } } } } } } } } voidayuda() { printf("Shell del sistema v0.1rc"); printf("nhora --> muestra la hora del sisteman"); printf("nlimpiar --> Limpia la pantallan"); printf("n!!! --> Muestra esta pantalla de ayudan"); printf("nlaninfo --> Muestra la información de la red cableadan"); printf("nsalir --> Salir de la shelln"); printf("ninfo --> muestra la información del siseman"); printf("nlist --> Listar archivos en la presente carpeta"); printf("nusuario --> Muestra el usuario que está actualmente conectado"); printf("nwlaninfo --> Muestra información de la red wirelessn"); printf("napagareq --> Apaga el sisteman"); } inthora() { time_trawtime; time ( &rawtime ); printf ( " %s", ctime (&rawtime) ); ingreso(); } void info() {
  • 7. system("./inform.sh"); } voidlaninfo() { system("ifconfig eth0"); } voidwlaninfo() { system("ifconfig wlan0"); } voidlistado() { structdirent **entradas= NULL; intnumeroEntradas; int i; numeroEntradas = scandir (".", &entradas, NULL, NULL); for (i=0; i<numeroEntradas; i++) { printf (" %s ", entradas[i]->d_name); free (entradas[i]); entradas[i] = NULL; } printf("n"); free (entradas); entradas = NULL; } voidusuario() { system("whoami"); } int error( intnum_err ) { char *errores[] = { "No se ha producido ningún error", "Comando desconocido , escriba !!! para mostrar una lista de los comandos", "No hay espacio en disco", "Me he cansado de trabajar" }; printf( "Error número %i: %s.n", num_err, errores[num_err] ); ingreso();