Vytvořte si program krok za krokem pomocí skriptování prostředí Shell - část 1

Jak už máme vidět a naučit se v předchozím Lístky jak bychom měli vytvářet díly iniciály (horní) v našich skriptech, tj. Shebang a BSM (Bash Strict Mode).

Shell skriptování

V tomto příspěvku si je budeme pamatovat, aniž bychom je vysvětlovali, protože bych to umístil do jednoho z mých programy (aplikace) fakta v a Shell skript volal 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 vložení vašeho Shebang a BSM, co byste pak měli vložit do svého Shell skript Jedná se o modul, který ověřuje, že jej může účinně spouštět pouze kořen superuživatele. Toto a jakékoli jiné modul, funkce, proměnná, příkaz nebo akce obecně to lze provést mnoho cest, takže to, co uvidíte dále, je jednoduchý způsobz mnoha možnými a pravděpodobnými způsoby ve kterém řekl akce může nebo by mohla být provedena:


###############################################################################
# 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
###############################################################################

Později v budoucích příspěvcích uvidíme mimo jiné i to, jak tvořit moduly (sekce) které vykonávají funkce jako:

  • MODUL SKRIPTU PROMĚNNÉ PROSTŘEDÍ
  • DVOJNÁSOBEK DETEKČNÍ MODUL PROVEDENÍ nebo NEÚSPĚŠNÉ PROVEDENÍ
  • OPTIMALIZAČNÍ MODUL
  • MODUL POVOLENÍ UŽIVATELE S HESLEM
  • MODUL DETEKCE ARCHITEKTURY OPERAČNÍHO SYSTÉMU
  • KONFIGURAČNÍ MODUL JAZYKA
  • PROXY KONFIGURAČNÍ MODUL PRO PROVÁDĚCÍ PROSTŘEDÍ

Mezi mnoha dalšímia naučit se používat příkazy gksu, dialog, gxmessage, zenity, espeak, hry, mezi mnoha jinými k vytváření grafických rozhraní pomocí terminálu nebo pro plochu uživatele se zvukovými nebo multimediálními upozorněními.

Ale vždy si pamatujte, že tato a další doporučení k některým modul, funkce, proměnná, příkaz nebo akce obecně to lze provést mnoho cest, a to, co je zde zobrazeno, není nic jiného než a jednoduchý způsobz mnoha možnými a pravděpodobnými způsoby ve kterém řekl akce může nebo by mohla být provedena!

Abych to dokončil, nechávám tě, a Screencast vytvořený mnou, abych vám po dokončení ukázal, čeho byste byli schopni Online kurz Shell Scripting DesdeLinux:

Testovací obrazovka LPI-SB8

(LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0) - Část 2


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.

  1.   Edward Cuomo řekl

    Zvu vás, abyste viděli a spolupracovali na projektu BashX (https://github.com/reduardo7/bashx), 100% Bash Framework, pomocí kterého můžete vytvářet aplikace velmi jednoduchým a jasným způsobem. Doufám, že vám to bude užitečné!

  2.   Ing.Jose Albert řekl

    Už jsem to viděl a stáhněte si! Zkontrolujte kódy, prozkoumejte jeho strukturu a zkuste je nainstalovat, ale došlo mi k chybě.

    Ale myslím si, že protože pokud se nemýlím, byl vytvořen na dlouhou dobu a stále je potřeba upravit některé parametry ručně, ale souhrnně se mi ten nápad zdá skvělý. Je to, pokud jsem správně pochopil, jak automatizovat vkládání předdefinovaných modulů, aby vyhovovaly uživateli, ve skriptu. Je to jako automatizovat to, co navrhuji a vysvětluji ručně!

    Správné nebo špatné! Každopádně nám o tom trochu povězte nebo si o tom někdo přihlaste!