Zgradite svoj program korak za korakom s pomočjo skript skriptov - 1. del

Kot že imamo videl in naučil v prejšnjem vstopnice kako naj ustvarimo dele začetnice (zgoraj) v naših skriptah, to je Shebang in BSM (Bash Strict Mode).

Shell Scripting

V tem prispevku se jih bomo samo še naprej spominjali, ne da bi jih pojasnili, saj bi jih postavil v enega izmed svojih programi (aplikacije) dejstva v a Shell scenarij imenuje Linux Post Install - Bicentennial Script 8.0:

s30a90


#!/usr/bin/env bash
# SheBang que le indica al Script que deberá usar al interprete bash ubicado en la ruta absoluta según el Sistema Operativo.

###############################################################################
# MODO BASH ESTRICTO ó SEGURO (Bash Strict Mode / BSM)
###############################################################################

###############################################################################
# SECCIÓN DE DEPURACIÓN DE ERRORES
###############################################################################
###############################################################################
set -eou pipefail
###############################################################################
# set -eou pipefail
#
# Para indicarle al script detener y cerrarse cuando:
# 1.- (-e) Un comando o linea de ejecución se ejecute y falla por completo.
# 2.- (-o) Un comando o linea de ejecución se ejecute con éxito, pero con novedad.
# 3.- (-u) Una secuencia de comandos intente utilizar variables no declaradas.
# 4.- (-x) Agréguele (Habilítelo) en caso de necesitar depurar el script.
###############################################################################
# LEER MAS EN:
# http://vaneyckt.io/posts/safer_bash_scripts_with_set_euxo_pipefail/
# http://redsymbol.net/articles/unofficial-bash-strict-mode/
###############################################################################
# OTRAS FORMAS DE IMPLEMENTACIÓN
###############################################################################
# set -e         # Cerrar cuando un comando o linea de ejecución falle por completo.
# set -o errexit # Cerrar cuando un comando o linea de ejecución falle pero con novedad.
# set -o nounset # Cerrar cuando se intenta utilizar variables no declaradas.
# set -o xtrace  # Rastrear lo que se ejecuta. Útil para la depuración.
###############################################################################


###############################################################################
# SECCIÓN DE LA SALIDA DE LAS VARIABLES CONFIGURADAS
###############################################################################
###############################################################################
IFS=$'\n\t'
###############################################################################
# Para reconfigurar la variable Internal Field Separator (Separador de campo interno)
# y lograr una mejor visualización y / o captura de las palabras (campos) de una
# cadena de caracteres. Habilítelo o no, según sus requerimientos y necesidades.
###############################################################################


###############################################################################
# SECCIÓN DE LA CONFIGURACIÓN PREDETERMINADA DEL TERMINAL DE EJECUCIÓN
###############################################################################
###############################################################################
setterm --reset
###############################################################################
# Para resetear la sesión y todos los parámetros de ejecución del terminal donde
# fue invocada el uso del Linux Post Install - Script Bicentenario.
# Habilítelo o no, según sus requerimientos y necesidades.
###############################################################################


###############################################################################
# SECCIÓN INFORMATIVA SOBRE EL CREADOR Y EL PROGRAMA
###############################################################################

###############################################################################
#                     REPÚBLICA BOLIVARIANA DE VENEZUELA 
#
# NOMBRE: LINUX POST INSTALL - SCRIPT BICENTENARIO (LPI-SB)
# VERSIÓN: 8.0+0
# TIPO DE PROGRAMA: SISTEMA EXPERTO
# FUNCIÓN: ASISTENTE TÉCNICO PARA S.O. GNU/LINUX BASADOS EN DEBIAN
# NOMBRE CÓDIGO: ALFA MATER (LPI-SB 8.0+0)
# PAÍS ORIGEN: REPÚBLICA BOLIVARIANA DE VENEZUELA
# CREADO POR: JOSÉ JOHAN ALBERT IZAIPE
# EMAIL: albertccs1976@hotmail.com
# NOMBRE FACEBOOK: Linux Post Install
# PAGINA PERSONAL FACEBOOK: http://www.facebook.com/linuxpostinstall
# COMUNIDAD FACEBOOK: http://www.facebook.com/pages/Script-Bicentenario/159467280799041
# TWITTER: @albertccs1976
# TELÉFONO: 0426.610.13.03
# PROMOCIONADO POR: PROYECTO TIC - TAC
# PAGINA WEB DEL PROYECTO TIC - TAC: http://www.proyectotictac.wordpress.com/
# FECHA DE LANZAMIENTO DE LA PRIMERA VERSIÓN (1.0): 07/12/2010
# FECHA DE LANZAMIENTO DE LA VERSIÓN ACTUAL (8.0+0): 01/02/2016
# FECHA DE ULTIMA ACTUALIZACIÓN: 04/02/2016
###############################################################################


###############################################################################
# SECCIÓN INFORMATIVA SOBRE EL LICENCIAMIENTO DEL PROGRAMA
###############################################################################

###############################################################################
#            LINUX POST INSTALL - SCRIPT BICENTENARIO (LPI-SB)
###############################################################################
#
# Derechos de autor:
# Copyleft (C) 2016 José Johan Albert Izaipe
# 
# Licenciamiento:
#
# El Linux Post Install – Script Bicentenario no viene con ninguna garantía. El 
# Autor no se hace responsable si se al aplicarse el Sistema Operativo se
# corrompe, daña o inutiliza.
#
# El Linux Post Install – Script Bicentenario es una aplicación de Software 
# Libre, por lo tanto usted puede redistribuirlo y / o modificarlo bajo los
# términos de la Licencia Pública General de GNU publicada por la Free Software
# Foundation, ya sea la versión 3 o cualquier versión posterior, según sea de su
# preferencia.
#
# Este programa se distribuye con la esperanza de que sea útil, pero SIN NINGUNA
# GARANTÍA, incluso sin la garantía implícita de COMERCIALIZACIÓN o IDONEIDAD
# para un propósito particular. Vea la Licencia Pública General de GNU para más
# detalles.
#
# Procure obtener una copia de la Licencia Pública General de GNU para estar al
# tanto sobre lo estipulado por la misma.
#
# Consúltela en:
#
# http://www.gnu.org/licenses/licenses.es.html
# http://www.gnu.org/licenses/license-list.html
# http://www.gnu.org/licenses/gpl-howto.es.html
# http://www.gnu.org/help/evaluation.html
# http://www.gnu.org/licenses/gpl-3.0.html#howto
#
# Más Información:
#
# http://www.creativecommonsvenezuela.org.ve/cc-licencias
# http://creativecommons.org/choose/?lang=es_ES
#
# Por lo tanto, Si usted hace alguna modificación en esta aplicación o toma una
#  porción de el, deberá siempre mencionar al autor original de la misma:   
#
# Desarrollador : José Albert
# Nick          : Linux Post Install
# Twitter       : @albertccs1976
# Facebook      : ttp://www.facebook.com/linuxpostinstall
# Telegram      : (+58) 416-6101303
# Canal Telegram: https://telegram.me/proyectotictac
#
# Este SCRIPT tiene un doble propósito:
#
# 1.- Educativo: Mostrar las buenas practicas en la diseño e implementación de
#                Script de Shell para Linux
#
# 2.- Técnico: Realizar vía terminal o gráfica las diversas acciones (módulos)
#              que se le añadan para su ejecución automatizada.            
#
###############################################################################
#            LINUX POST INSTALL - SCRIPT BICENTENARIO (LPI-SB)
###############################################################################

Po vstavitvi Shebang in BSM, kaj bi potem morali vstaviti v svoj Shell scenarij To je modul, ki potrjuje, da ga lahko izvrši le koren super uporabnika. To in katero koli drugo modul, funkcija, spremenljivka, ukaz ali dejanje na splošno se lahko izvede dosti načinov, kar boste videli v nadaljevanju, je preprost način, od veliko možnih in verjetnih načinov v katerem je rekel lahko ali bi se lahko izvedlo:


###############################################################################
# INICIO DEL MODULO DE VALIDACIÓN PERMISO DE SUPERUSUARIO (ROOT) SOBRE EL LPI-SB
###############################################################################

# ESTE MODULO VALIDA QUE SOLO EL SUPERUSUARIO (USUARIO ROOT) PUEDA EJECUTAR
# EL LINUX POST INSTALL - SCRIPT BICENTENARIO.

clear

setterm -background red

if [[ "$(id -u)" != "0" ]]; then
   echo "ESTE SCRIPT DEBE SER EJECUTADO COMO ROOT"
   sleep 3
   clear      
  else
   echo "ESTE SCRIPT SERA EJECUTADO COMO SUPERUSUARIO (ROOT)"
   sleep 3
   clear
fi

###############################################################################
# FINAL DEL MODULO DE VALIDACIÓN PERMISO DE SUPERUSUARIO (ROOT) SOBRE EL LPI-SB
###############################################################################

Kasneje bomo v prihodnjih objavah med drugim videli, kako ustvariti moduli (odseki) ki opravljajo funkcije, kot so:

  • MODUL SPREMENLJIVOSTI SKRIPTNEGA OKOLJA
  • Dvojni modul za zaznavanje izvršitve ali neuspešna izvedba
  • OPTIMIZACIJSKI MODUL
  • MODUL DOVOLJENJA ZA UPORABNIKA Z GESLO
  • MODUL ODKRIVANJA ARHITEKTURE OPERATIVNEGA SISTEMA
  • KODIRANJE MODULA KONFIGURACIJE JEZIKA
  • MODUL KONFIGURACIJE PROXY ZA IZVRŠILNO OKOLJE

Med mnogimi drugimi, in se naučite uporabljati ukazi gksu, dialog, gxmessage, zenity, espeak, play, med mnogimi drugimi za ustvarjanje grafičnih vmesnikov prek terminala ali uporabniškega namizja z zvočnimi ali večpredstavnostnimi opozorili.

Vedno pa ne pozabite, da ta in katera koli druga priporočila o nekaterih modul, funkcija, spremenljivka, ukaz ali dejanje na splošno se lahko izvede dosti načinov, in to, kar je prikazano tukaj, je samo eno preprost način, od veliko možnih in verjetnih načinov v katerem je rekel lahko ali bi se lahko izvedlo!

Za konec vas zapuščam, a Screencast, ki sem ga naredil jaz, da vam po tem, kar ste končali, pokažete, česa bi bili sposobni Shell Scripting spletni tečaj v DesdeLinux:

LPI-SB8 Test ScreenCast

(LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0) - 2. del


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.

  1.   Edward Cuomo je dejal

    Vabim vas, da si ogledate in sodelujete pri projektu BashX (https://github.com/reduardo7/bashx), 100% Bash Framework, s katerim lahko ustvarjate aplikacije na zelo preprost in jasen način. Upam, da vam bo koristno!

  2.   ing. Jose Albert je dejal

    Sem že videl in prenesel! Preverite kode, raziščite njeno strukturo in jo poskusite namestiti, vendar mi je prišlo do napake.

    Ampak mislim, da, ker se ne motim, je bil ustvarjen že dolgo in še vedno mora nekatere parametre prilagoditi ročno, vendar se mi na koncu zdi ideja odlična. Če sem prav razumel, je v skriptu avtomatizirati vstavljanje vnaprej določenih modulov, ki ustrezajo uporabniku. Kot da bi avtomatizirali to, kar predlagam in razlagam ročno!

    Prav ali narobe! Kakorkoli že, povejte nam malo o tem ali pa ga o tem vnesite!