Erstellen Sie Ihr Programm Schritt für Schritt mit Shell Scripting - Teil 1

Wie wir es schon haben gesehen und gelernt in früheren Einträge Wie sollen wir die Teile erstellen? Initialen (oben) in unseren Skripten also der Shebang und der BSM (Bash Strict Mode).

Shell Scripting

In diesem Beitrag werden wir uns nur an sie erinnern, ohne sie zu erklären, wie ich es in einem meiner Artikel platzieren würde Programme (Anwendungen) Fakten in a Shell-Skript namens Linux Post Install - Zweihundertjähriges Skript 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)
###############################################################################

Nach dem Einfügen Ihrer Shebang und BSM, was du dann in dein einfügen solltest Shell-Skript Es ist ein Modul, das bestätigt, dass es tatsächlich nur vom Superuser-Stamm ausgeführt werden kann. Dies und jedes andere Modul, Funktion, Variable, Befehl oder Aktion im Allgemeinen kann es durchgeführt werden viele MöglichkeitenAlso, was Sie als nächstes sehen werden, ist a einfacher Weg, Der viele mögliche und wahrscheinliche Wege in dem gesagt Aktion kann oder könnte durchgeführt werden:


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

Später, in zukünftigen Beiträgen, werden wir unter anderem sehen, wie man erstellt Module (Abschnitte) die Funktionen ausführen wie:

  • SCRIPT ENVIRONMENT VARIABLES MODUL
  • DOUBLE EXECUTION DETECTION MODULE oder FAILED EXECUTION
  • OPTIMIERUNGSMODUL
  • BENUTZERAUTORISIERUNGSMODUL MIT PASSWORT
  • ARCHITEKTURERKENNUNGSMODUL DES OPERATIVEN SYSTEMS
  • CODING LANGUAGE CONFIGURATION MODULE
  • PROXY-KONFIGURATIONSMODUL FÜR DIE AUSFÜHRUNGSUMGEBUNG

Unter vielen anderenund lernen, die Befehle gksu, dialog, gxmessage, zenity, espeak, play, unter vielen anderen Erstellen grafischer Oberflächen über das Terminal oder für den Desktop des Benutzers mit Sonic- oder Multimedia-Warnungen.

Aber denken Sie immer daran, dass diese und andere Empfehlungen zu einigen Modul, Funktion, Variable, Befehl oder Aktion im Allgemeinen kann es durchgeführt werden viele Möglichkeitenund was hier gezeigt wird, ist nur eine einfacher Weg, Der viele mögliche und wahrscheinliche Wege in dem gesagt Aktion kann oder könnte durchgeführt werden!

Nur zum Schluss verlasse ich dich, a Screencast von mir gemacht, um Ihnen zu zeigen, wozu Sie in der Lage wären, nachdem Sie dies beendet haben Online-Kurs „Shell Scripting“ in DesdeLinux:

LPI-SB8 Test ScreenCast

(LINUX POST INSTALL - BICENTENNIAL SCRIPT 8.0.0) - Teil 2


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   Eduard Cuomo sagte

    Ich lade Sie ein, das BashX-Projekt zu sehen und mit ihm zusammenzuarbeiten (https://github.com/reduardo7/bashx), ein 100% Bash Framework, mit dem Sie auf sehr einfache und übersichtliche Weise Anwendungen erstellen können. Ich hoffe es wird dir nützlich sein!

  2.   José Albert sagte

    Ich habe es schon gesehen und heruntergeladen! Überprüfen Sie die Codes, untersuchen Sie die Struktur und versuchen Sie, sie zu installieren, aber es gab mir einen Fehler.

    Aber ich denke, wenn ich mich nicht irre, wurde es für eine lange Zeit erstellt und es müssen noch einige Parameter manuell angepasst werden, aber zusammenfassend scheint mir die Idee großartig. Wenn ich richtig verstanden habe, ist es das Automatisieren des Einfügens vordefinierter Module in ein Skript, um sie dem Benutzer anzupassen. Es ist, als würde man automatisieren, was ich vorschlage und von Hand erkläre!

    Richtig oder falsch! Wie auch immer, erzähl uns ein wenig darüber oder lass einen darüber eintreten!