Najboljše prakse za ustvarjanje skripta lupine v GNU / Linux - 2. del

Najprej pred branjem te publikacije priporočam, da preberete del I omenjene objave, pokl «Najboljše prakse za ustvarjanje skripta lupine v GNU / Linux".

Shell Scripting

Nato majhna povzetek najpomembnejše sreče prejšnji vnos:

A) Idealen Shebang naj bo zapisano takole:

#! / usr / bin / env bash.

Opomba: Zamenjava besede bash po lupini po vaši izbiri.

B) Da bi dosegli odličnega STRICT ali SAFE BASH MODE (Bash Strict Mode / BSM) ponujamo naslednje možnosti:

B.1) Konfiguracija odseka za odpravljanje napak:

  1. nastavite -o errexit
  2. set -o samostalnik
  3. set -o okvara cevi
  4. # set -o xtrace

Vendar v tem novem vnosu predlagamo, da se vrstice kode čim bolj zmanjšajo, na naslednje BASH STRICT ali SAFE MODE (Bash Strict Mode / BSM):

set -eou pipefail

S tem BSM dosežemo popolnoma enako kot pri prejšnjih 3 vrsticah.

Moje osebno priporočilo je: Ko je vaš Shell Script zgrajen, dodajte vrstice BSM, da začnete odpravljati napake in izpopolnjujte svoj skript ter ga naredite zelo funkcionalnega. Ko želite, dodajte rečeno BSM možnost (-x) da dosežete enak učinek kot takrat, ko omogočite vrstico: nastavi -o xtrace, v zgornji metodi, to je vaša vrstica BSM bi moralo izgledati takole:

set -eoux pipefail

B.2) Konfiguracija izhodnega odseka konfiguriranih spremenljivk:

IFS=$'\n\t'

Če dodamo to vrstico, spremenimo spremenljivko Notranji ločevalnik polja in dosežemo boljšo vizualizacijo in / ali zajem besed (polj) znakovnega niza. Omogočite ali ne glede na vaše zahteve in potrebe.

S temi tipičnimi nastavitvami:


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

Izhodi spremenljivk bi bili pridobljeni na naslednji način:


a
b
c
a b c

S privzetimi in priporočenimi nastavitvami:


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

Izhodi spremenljivk bi bili pridobljeni na naslednji način:


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) Konfiguracijski odsek privzete konfiguracije izvršilnega terminala:

setterm --reset

Z dodajanjem te vrstice nadaljujemo s popolno ponastavitvijo celotne seje in izvedbenih parametrov terminala, kjer je uporabljena Shell scenarij izvršena. Omogočite ali ne glede na vaše zahteve in potrebe.

S tem bomo imeli BSM zelo koristno in učinkovito, da bi imeli odličnega Shell scenarij.

Na koncu bomo raziskali, kaj bi moral imeti Shell Script spodaj:

  • Informativni del o ustvarjalcu in 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:
###########################################################

  • Informativni del o licenciranju programa:

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

Upam, da s tem drugim delom "Najboljši postopki za ustvarjanje skripta lupine v GNU / Linux" je dovolj, da se lahko pri ustvarjanju a temeljito osredotočijo na vsak njegov majhen vidik in razlog za marsikaj Shell scenarijupam, da vam bodo nekateri od teh nasvetov pomagali pri izboljšanju Shell scenarij, vendar ne toliko zase, ampak za tiste Uporabniki o Sistemski skrbnik jih moraš upravljati. Tako da vam ni treba iti skozi dolgočasno in težko nalogo de ugotovite, kaj so kodirali, kako in zakaj in zakaj to ne deluje več.

Do naslednjih objav na Shell Scripting!


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.