Shell сценарийін қолданып бағдарламаңызды біртіндеп құрыңыз - 1 бөлім

Бізде бар сияқты көрген және білген алдыңғы билеттер бөлшектерді қалай жасауымыз керек инициалдар (жоғарғы) біздің сценарийлерімізде, яғни Shebang және BSM (Bash қатаң режимі).

Қабық сценарийБұл жазбада біз оларды түсіндірмей-ақ есте сақтаймыз, өйткені мен оны өзімнің біреуіме орналастырған болар едім бағдарламалар (қосымшалар) а фактілері Shell сценарийі шақырылды Linux Post Install - екіжылдық сценарий 8.0:

с30а90


#!/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)
###############################################################################

Сіздің салыңыз Shebang және BSM, содан кейін өзіңе не салу керек Shell сценарийі Бұл шынымен суперпайдаланушының түбірі ғана орындай алатындығын растайтын модуль. Бұл және басқалары модуль, функция, айнымалы, команда немесе әрекет жалпы оны жүзеге асыруға болады көптеген жолдар, содан кейін не көресіз: а қарапайым әдіс, көптеген мүмкін және ықтимал тәсілдер онда айтылған әрекет жүзеге асырылуы мүмкін немесе мүмкін:


###############################################################################
# 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, spspak, play командалары, басқалардың арасында графикалық интерфейстерді терминал арқылы немесе пайдаланушының жұмыс үстелі үшін дыбыстық немесе мультимедиялық ескертулермен құру.

Бірақ әрқашан осы және басқа ұсыныстар туралы есте сақтаңыз модуль, функция, айнымалы, команда немесе әрекет жалпы оны жүзеге асыруға болады көптеген жолдар, және мұнда тек біреуі көрсетілген қарапайым әдіс, көптеген мүмкін және ықтимал тәсілдер онда айтылған әрекет жүзеге асырылуы мүмкін немесе мүмкін!

Аяқтау үшін мен сені тастаймын, а Мен жасаған скринкаст, мұны аяқтағаннан кейін сіз не істей алатыныңызды көрсету үшін Shell Scripting онлайн курсы DesdeLinux:

LPI-SB8 скринкаст сынағы

(LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0) - 2 бөлім


Мақаланың мазмұны біздің ұстанымдарымызды ұстанады редакторлық этика. Қате туралы хабарлау үшін нұқыңыз Мұнда.

2 пікір, өз пікіріңізді қалдырыңыз

Пікіріңізді қалдырыңыз

Сіздің электрондық пошта мекен-жайы емес жарияланады.

*

*

  1. Деректерге жауапты: Мигель Анхель Гатан
  2. Деректердің мақсаты: СПАМ-ны басқару, түсініктемелерді басқару.
  3. Заңдылық: Сіздің келісіміңіз
  4. Деректер туралы ақпарат: заңды міндеттемелерді қоспағанда, деректер үшінші тұлғаларға жіберілмейді.
  5. Деректерді сақтау: Occentus Networks (ЕО) орналастырған мәліметтер базасы
  6. Құқықтар: Сіз кез-келген уақытта ақпаратты шектей, қалпына келтіре және жоя аласыз.

  1.   Эдуардо Куомо дижо

    Мен сізді BashX жобасында көруге және ынтымақтастықта болуға шақырамын (https://github.com/reduardo7/bashx), бағдарламаларды өте қарапайым және түсінікті етіп жасауға болатын 100% Bash Framework. Сізге пайдалы болады деп сенемін!

  2.   Инг. Хосе Альберт дижо

    Мен бұны көріп, жүктеп алдым! Кодтарды тексеріп, құрылымын зерттеп, орнатуға тырысыңыз, бірақ ол маған қате жіберді.

    Бірақ менің ойымша, егер ол қателеспесем, ол ұзақ уақыттан бері жасалынған және кейбір параметрлерді қолмен түзету қажет, бірақ қысқаша айтқанда бұл идея маған керемет болып көрінеді. Егер мен дұрыс түсінген болсам, сценарий аясында қолданушыға сәйкес келетін алдын-ала анықталған модульдерді кірістіруді қалай автоматтандыруға болады. Бұл менің ұсынғанымды және түсіндіретінімді автоматтандырумен бірдей!

    Дұрыс па, бұрыс па! Қалай болғанда да, бұл туралы өзіңіз туралы аздап айтып беріңіз немесе біреуін енгізіңіз!

bool(шын)