Osvědčené postupy pro vytvoření skriptu Shell v GNU / Linuxu - část 2

Nejprve si před přečtením této publikace doporučuji přečíst část I. uvedené publikace, tzv «Osvědčené postupy pro vytvoření Shell Script v GNU / Linux".

Shell skriptování

Dále malý shrnutí nejdůležitější štěstí předchozí položka:

A) Ideální Shebang mělo by to být napsáno takto:

#! / usr / bin / env bash.

Nota: Nahrazení slova praštit podle vašeho výběru.

B) K dosažení vynikající STRICT nebo SAFE BASH MODE (Bash Strict Mode / BSM) nabízíme následující alternativy:

B.1) Konfigurace ladicí sekce:

  1. nastavit -o errexit
  2. nastavit -o podstatná jména
  3. nastavit -o pipefail
  4. # set -o xtrace

V této nové položce však navrhujeme, abychom minimalizovali následující řádky kódu BASH STRICT nebo BEZPEČNÝ REŽIM (Bash Strict Mode / BSM):

set -eou pipefail

S tímto BSM dosáhneme přesně stejného výsledku jako u předchozích 3 řádků.

Moje osobní doporučení je: Jakmile je váš Shell Script vytvořen, přidejte řádky BSM a začněte ladit a zdokonalovat váš Script a zajistit jeho vysokou funkčnost. Pokud chcete, přidejte řekl BSM možnost (-X) dosáhnout stejného efektu jako při povolení řádku: nastavit -o xtraceve výše uvedené metodě, tj. vaše řada BSM mělo by to vypadat takto:

set -eoux pipefail

B.2) Konfigurace výstupní sekce konfigurovaných proměnných:

IFS=$'\n\t'

Přidáním tohoto řádku pokračujeme k překonfigurování proměnné Oddělovač interního pole a dosáhnout lepší vizualizace a / nebo zachycení slov (polí) řetězce znaků. Povolte to nebo ne, podle vašich požadavků a potřeb.

S těmito typickými nastaveními:


    #!/bin/bash
    IFS=$' '
    items="a b c"
    for x in $items; do
        echo "$x"
    done

    IFS=$'\n'
    for y in $items; do
        echo "$y"
    done

Výstupy proměnných by byly získány následujícím způsobem:


a
b
c
a b c

S výchozím a doporučeným nastavením:


    #!/bin/bash
    names=(
      "Aaron Maxwell"
      "Wayne Gretzky"
      "David Beckham"
      "Anderson da Silva"
    )

    echo "Con el valor por defecto de la variable IFS..."
    for name in ${names[@]}; do
      echo "$name"
    done

    echo ""
    echo "Con el Modo BSM para el valor de la variable IFS activado..."
    IFS=$'\n\t'
    for name in ${names[@]}; do
      echo "$name"
    done

Výstupy proměnných by byly získány následujícím způsobem:


Con el valor por defecto de la variable IFS...
Aaron
Maxwell
Wayne
Gretzky
David
Beckham
Anderson
da
Silva

Con el Modo BSM para el valor de la variable IFS activado...
Aaron Maxwell
Wayne Gretzky
David Beckham
Anderson da Silva

B.3) Sekce konfigurace výchozí konfigurace prováděcího terminálu:

setterm --reset

Přidáním tohoto řádku pokračujeme k úplnému vynulování celé relace a parametrů spuštění terminálu, kde je použití Shell skript popraven. Povolte to nebo ne, podle vašich požadavků a potřeb.

S tímto budeme mít BSM velmi užitečné a efektivní mít vynikající Shell skript.

Nakonec níže prozkoumáme, co by měl mít Shell Script:

  • Informační část o Tvůrci a programu:

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

###########################################################
#                             MI PAÍS 
#
# NOMBRE: 
# VERSIÓN: 
# TIPO DE PROGRAMA:
# FUNCIÓN:
# NOMBRE CÓDIGO:
# PAÍS ORIGEN:
# CREADO POR:
# EMAIL:
# NOMBRE FACEBOOK:
# PAGINA PERSONAL FACEBOOK:
# COMUNIDAD FACEBOOK:
# TWITTER:
# TELÉFONO:
# PROMOCIONADO POR:
# PAGINA WEB DEL PROYECTO TIC - TAC:
# FECHA DE LANZAMIENTO DE LA PRIMERA VERSIÓN (1.0):
# FECHA DE LANZAMIENTO DE LA VERSIÓN ACTUAL (8.0+0):
# FECHA DE ULTIMA ACTUALIZACIÓN:
###########################################################

  • Informační část o licencování programu:

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

###########################################################
# NOMBRE DEL SCRIPT DE SHELL
###########################################################
#
# Derechos de autor:
# Copyleft (C) Año - Creador
# 
# Licenciamiento:
#
# El NOMBRE DEL SCRIPT DE SHELL no viene con ninguna garantía. El 
# Autor no se hace responsable si se al aplicarse el S.O., se
# corrompe, daña o inutiliza.
#
# El NOMBRE DEL SCRIPT DE SHELL 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, o sea, la versión 3
# ó versión posterior, según sea 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 Publica General 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 él, deberá siempre mencionar al
# autor original de la misma:
#
# Desarrollador : 
# Nick          : 
# Twitter       : 
# Facebook      : 
# Telegram      : 
# Canal Telegram:
#
# Este SCRIPT tiene como propósito:
#
# 1.- PROPÓSITO 1: ABCDEFGHIJKLMNÑOPQRSTUVXYZ
#
# 2.- PROPÓSITO 2: ABCDEFGHIJKLMNÑOPQRSTUVXYZ
#
############################################################
# NOMBRE DEL SCRIPT DE SHELL
############################################################

Doufám, že s touto druhou částí „Osvědčené postupy pro vytvoření skriptu Shell v GNU / Linuxu“ je dost na to, aby se mohli důkladně soustředit na každý jeho malý aspekt a důvod mnoha věcí při vytváření Shell skript, tj. doufám, že vám některé z těchto tipů pomohou, pokud jde o zlepšování Shell skript, ale ne tolik pro sebe, ale pro ty Uživatelé o SysAdmin musíte je spravovat. Abys nemusel projít a zdlouhavý a obtížný úkol de zjistit, co kódovali, jak a proč a proč to již nefunguje.

Až do několika příštích příspěvků o Shell Scripting!


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.