Construye paso a paso tu programa usando Shell Scripting – Parte 6

Repasando lo que hemos visto hasta ahora en la serie de post llamados “Construye paso a paso tu programa usando Shell Scripting” hemos estudiado visto ejemplos de como crear los siguientes módulos:

Shell Scripting

En esta nueva edición, la sexta (6), abarcaremos el estudio de el siguiente modulo:

MODULO DE DETECCIÓN DE ARQUITECTURA

Este modulo le permitirá considerar dependiendo de la Arquitectura del Sistema Operativo donde sea ejecutado, tanto la validación de la misma, como acciones ulteriores programadas en función de dicho dato.

Su contenido sería el siguiente:


###############################################################################
# INICIO DEL MODULO DE DETECCIÓN DE ARQUITECTURA DEL LPI-SB
###############################################################################

read -p "Introduzca la Arquitectura de su Sistema Operativo (1 = 32Bit / 2 = 64Bit): " ARQ
echo ""

while [[ $ARQ != "1" && $ARQ != "2" ]]

do

echo -e '\a'

echo ""
echo ""
echo "#-----------------------------------------------------------------#"
echo "# LA ARQUITECTURA POR USTED INDICADA NO COINCIDE CON LO SOLICITADO#"
echo "#-----------------------------------------------------------------#"
echo ""
echo ""

read -p "PRESIONE 1 ó 2 para continuar: " ARQ
echo ""

done

if [[ "$ARQ" == "1" ]]; then
   ARQ_A=x86
   ARQ_B=i386
  else
   ARQ_A=x86_64
   ARQ_B=amd64
fi

echo "La arquitectura seleccionadas fueron" $ARQ_A "y" $ARQ_B "según sus datos."
sleep 3

if [[ "$ARQ_A" == "$ARQ_DISTRO_COD" ]]; then

echo -e '\a'

echo ""
echo ""
echo "#--------------------------------------------------------------#"
echo "# LA ARQUITECTURA POR USTED INDICADA COINCIDE CON LA DETECTADA #"
echo "#--------------------------------------------------------------#"
echo ""
echo ""

sleep 3
clear

  else

echo -e '\a'

echo ""
echo ""
echo "#-----------------------------------------------------------------#"
echo "# LA ARQUITECTURA POR USTED INDICADA NO COINCIDE CON LA DETECTADA #"
echo "#-----------------------------------------------------------------#"
echo ""
echo ""

fi

read -p "SI DESEA CANCELAR EL PROCESO HASTA AHORA PRESIONE CUALQUIERA DE LOS SIGUIENTES CARACTERES: "s" "S" "y" "Y". DE LO CONTRARIO PRESIONE CUALQUIER OTRA TECLA PARA CONTINUAR, RECUERDE QUE TRABAJAR CON LA ARQUITECTURA INCORRECTA PUEDE TRAERLE SERIOS INCONVENIENTES AL LPI-SB PARA TRABAJAR OPTIMAMENTE! : " op

if [[ $op == "y" || $op == "Y" || $op == "s" || $op == "S" ]];

 then

   sleep 3 ; clear ; exit 0

 else

   sleep 3 ; clear ; read -p "EL SCRIPT LPI-SB PROCEDERA HA CONTINUAR, PRESIONE CUALQUIER TECLA PARA CONTINUAR..." && sleep 3 ; clear

fi

################################################################################
# FINAL DEL MODULO DE DETECCIÓN DE ARQUITECTURA DEL LPI-SB
################################################################################

Al analizar dicho código nos damos cuenta que lo primero que hace dicho módulo es solicitarle al usuario lo siguiente:

Introduzca la Arquitectura de su Sistema Operativo (1 = 32Bit / 2 = 64Bit)

Dependiendo del valor introducido, el modulo realiza la siguiente evaluación:

Es el valor introducido igual ha 1 ó 2

En caso de no ser igual a ninguno de los 2 valores, el modulo repite la solicitud de lectura hasta que sea igual ha uno de los 2 valores requeridos. En caso de ser igual a uno de ellos, el modulo realiza la siguiente evaluación:

Si el valor introducido es igual ha uno (1), las variables $ARQ_A y $ARQ_B se configuran con los valores x86 y i386 correspondientemente y se muestran por pantalla, en caso de que sea dos (2) los valores almacenados serían: x86_64 y amd64.

Luego compara el el valor de $ARQ_A con $ARQ_DISTRO_COD cuyo valor es igual ha la salida del comando: uname -m, previamente cargado en el modulo de Variables de entorno del mismo programa.

Si los 2 valores son iguales emite el siguiente mensaje por pantalla:

LA ARQUITECTURA POR USTED INDICADA COINCIDE CON LA DETECTADA

Si son diferentes, este otro:

LA ARQUITECTURA POR USTED INDICADA NO COINCIDE CON LA DETECTADA

Finalizando con el ultimo mensaje de advertencia al usuario que dice:

SI DESEA CANCELAR EL PROCESO HASTA AHORA PRESIONE CUALQUIERA DE LOS SIGUIENTES CARACTERES: «s» «S» «y» «Y». DE LO CONTRARIO PRESIONE CUALQUIER OTRA TECLA PARA CONTINUAR, RECUERDE QUE TRABAJAR CON LA ARQUITECTURA INCORRECTA PUEDE TRAERLE SERIOS INCONVENIENTES AL LPI-SB PARA TRABAJAR ÓPTIMAMENTE!

Si el usuario presiona algunos de los caracteres correctos, el programa se cierra y en caso contrario emite el siguiente mensaje y continua su operación:

EL SCRIPT LPI-SB PROCEDERÁ HA CONTINUAR, PRESIONE CUALQUIER TECLA PARA CONTINUAR…

=============

LECTURA RECOMENDADA:

¿QUE PUDIERAN GANAR LOS ESTADOS (NACIONES) Y LAS SOCIEDADES (PUEBLOS) CREANDO APLICACIONES  CENTRALIZADAS EN SOFTWARE LIBRE, CÓDIGO ABIERTO Y BASADAS EN EL INTERNET (NUBE)?

En mi opinión muy particular, pienso que considerando las apremiantes necesidades de seguimiento, control, unificación de criterios y tramites, centralización de esfuerzos, ahorro de recursos financieros y horas / labor de los valiosos y escasos recursos humanos especializados en diferentes campos laborales de cualquier Administración Publica Nacional (APN) de algún país pobre y/o en vías de desarrollo, la ganancia va orientada a la búsqueda de soluciones y mejoras de las necesidades reales de los entornos sociales en el cual se desenvuelven esas sociedades e instituciones públicas, a un bajo costo y de una manera innovadora, moderna, escalable y transparente, asumiendo desde dentro (Gobierno) y desde fuera (Pueblo/Sociedad), la corresponsabilidad del éxito de las políticas publicas de ese Estado (Nación), fortaleciendo así el compromiso con el país por parte de ambos actores, en el marco de construcción del proyecto socio-político, económico y tecnológico que se tenga pensado aplicar.

Y como se justifica esto ante los Gobiernos o los Pueblos?

Debemos resaltar que en la actualidad, en el mundo se están produciendo una serie de cambios en la manera en que operan los Estados (Gobiernos) y en su responsabilidad frente a la sociedad, lo cual ha exigido que la búsqueda de la eficiencia, eficacia, visibilidad y publicidad (Comunicación de la gestión publica), sean un imperativo esencial, no solo en temas asociados hacia los ciudadanos, tales como la pobreza, la salud, el medio ambiente, la educación y todo en general, sí no también en la solución a los problemas que hay en el manejo y la operatividad del seguimiento y control de las políticas publicas que operan en las instituciones que componen cualquier Estado Nacional, sobre todo en aquellos que están en un procesos de optimización y re-estructuración continua hacia modelos nuevos que provean la mayor calidad de vida a sus habitantes.

Del mismo modo, el rol de la ciudadanía también ha venido transformándose, mediante la utilización de formas de expresión mucho mas novedosas y diversas, directas y poderosas, basadas en el uso de las Tecnologías de la Información y las Comunicaciones (TIC), las mismas, que la mayoría de los países desarrollados, ya han venido implementado y masificando dentro y fuera de sus APN en beneficio de sus ciudadanos.

Y tomando en cuenta que las instituciones públicas de los países pobres o en vías de desarrollo, poseen un conglomerado importante de información basada en procesos y documentos que deberían ser uniformes (estandarizados), y de proyectos y obras en marcha que van orientados al beneficio directo de sus nacionales (habitantes), la creación de Aplicaciones o Sistemas basados en Código abierto, Software Libre funcionando en el Internet (Nube) servirían como plataforma para canalizar y potenciar dichos elementos antes mencionados, haciendo mas eficiente el concepto de GOBIERNO ELECTRÓNICO, potenciando las operaciones dentro de las instituciones publicas, aprovechando los avances de la tecnología para garantizar una mejor comunicación e interacción intergubernamental entre todos los entes de dicho Estado.

En fin, usando Código Abierto, Software Libre y la Internet fácilmente cualquier Estado pudiera a bajo costo, de una manera moderna, transparente y segura dar respuesta ha las siguientes interrogantes básicas que todo Estado o Gobierno debe hacerse:

  • ¿Cómo hacer más eficaces y eficientes los procesos internos gubernamentales, y las políticas públicas implementadas, en consonancia con el aumento de las pertinentes medidas y controles de seguimiento y control de los mismo?

  • ¿Cómo proteger y optimizar los recursos (materiales, tecnológicos y humanos) del Estado?

  • ¿Cómo lograr innovar dentro de las rígidas estructuras administrativas para lograr los retos (metas) institucionales y sociales?

  • ¿Cómo mejorar la satisfacción y la apreciación pública hacia la gestión del Gobierno?

  • ¿Como avanzar en logros en materia de Gobierno Electrónico?

En resumen, la buena implementación de las TIC usando Código Abierto, Software Libre y la Internet facilitarían el avance rápidamente en el desarrollo social de cualquier nación, ya que en conjunto con los mejores recursos humanos, un Estado obtendría el mejor apoyo para lograr automatizar los distintos planes de desarrollo de sus instituciones, optimizando y acelerando los procesos y tiempos de respuesta que se gestionan dentro de si mismo.


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.