Создайте свою программу шаг за шагом, используя сценарии оболочки - часть 1

Как у нас уже есть видел и узнал в предыдущем Записи как нам создавать детали инициалы (верхний) в наших скриптах, то есть Shebang и BSM (строгий режим Bash).

Скрипты оболочки

В этом посте мы продолжим их запоминать, не объясняя их, поскольку я бы поместил его в один из своих программы (приложения) факты в Сценарий оболочки называемый Пост-установка Linux - 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)
###############################################################################

После вставки Шебанг и BSM, что затем следует вставить в Сценарий оболочки Это модуль, который проверяет, действительно ли его может выполнять только суперпользователь. Это и любые другие модуль, функция, переменная, команда или действие в общем можно провести много способов, так что дальше вы увидите простой способиз много возможных и вероятных способов в котором сказано действие может или могло быть выполнено:


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

Позже, в будущих публикациях, мы увидим, среди прочего, как создавать модули (разделы) которые выполняют такие функции, как:

  • МОДУЛЬ ПЕРЕМЕННЫХ ОКРУЖАЮЩЕЙ СРЕДЫ СКРИПТА
  • МОДУЛЬ ОБНАРУЖЕНИЯ ДВОЙНОГО ИСПОЛНЕНИЯ или НЕУДАЧНОЕ ВЫПОЛНЕНИЕ
  • МОДУЛЬ ОПТИМИЗАЦИИ
  • МОДУЛЬ АВТОРИЗАЦИИ ПОЛЬЗОВАТЕЛЯ С ПАРОЛЕМ
  • МОДУЛЬ ОБНАРУЖЕНИЯ АРХИТЕКТУРЫ ОПЕРАЦИОННОЙ СИСТЕМЫ
  • МОДУЛЬ КОНФИГУРАЦИИ ЯЗЫКА КОДИРОВКИ
  • МОДУЛЬ КОНФИГУРАЦИИ ПРОКСИ ДЛЯ СРЕДЫ ВЫПОЛНЕНИЯ

Среди многих других, и научитесь использовать команды gksu, dialog, gxmessage, zenity, espeak, play, среди многих других для создания графических интерфейсов с помощью Терминала или для рабочего стола пользователя со звуковыми или мультимедийными предупреждениями.

Но всегда помните, что эти и любые другие рекомендации по некоторым модуль, функция, переменная, команда или действие в общем можно провести много способов, а здесь показан только один простой способиз много возможных и вероятных способов в котором сказано действие может или могло быть выполнено!

Просто чтобы закончить, я оставляю тебя, Сделанный мной скринкаст, чтобы показать вам, на что вы будете способны после завершения этого Онлайн-курс Shell Scripting в DesdeLinux:

Тест LPI-SB8 ScreenCast

(LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0) - Часть 2


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Эдуардо Куомо сказал

    Я приглашаю вас увидеть и сотрудничать в проекте BashX (https://github.com/reduardo7/bashx), 100% Bash Framework, с помощью которого вы можете создавать приложения очень простым и понятным способом. Надеюсь, он будет вам полезен!

  2.   Инженер Хосе Альберт сказал

    Уже видел и скачал! Проверьте коды, изучите его структуру и попробуйте установить, но это дало мне ошибку.

    Но я думаю, потому что, если я не ошибаюсь, он создавался давно и ему все еще нужно настроить некоторые параметры вручную, но в целом идея мне кажется прекрасной. Это, если я правильно понял, как автоматизировать вставку предопределенных модулей в соответствии с требованиями пользователя в сценарий. Это похоже на автоматизацию того, что я предлагаю и объясняю вручную!

    Правильно или нет! В любом случае, расскажите нам немного об этом или попросите кого-нибудь рассказать об этом!