10 hyödyllistä vinkkiä tehokkaiden Bash-komentosarjojen kirjoittamiseen Linuxissa


järjestelmänhallinta tehtävien automatisoimiseksi, uusien yksinkertaisten apuohjelmien/työkalujen kehittäminen vain muutamia mainitsemaan.

Tässä artikkelissa jaamme 10 hyödyllistä ja käytännön vinkkiä tehokkaiden ja luotettavien bash-komentosarjojen kirjoittamiseen, ja niihin sisältyy:

1. Käytä aina komentoja komentosarjoissa

Tämä on suositeltava käytäntö, jota ei sovelleta vain komentosarjojen komentosarjoihin, vaan kaikkiin muihin ohjelmointityyppeihin. Kommenttien kirjoittaminen komentosarjaan auttaa sinua tai joku muu käymään läpi käsikirjoituksesi ymmärtämään, mitä käsikirjoituksen eri osat tekevät.

Ensinnäkin kommentit määritetään käyttämällä # -merkkiä.

#TecMint is the best site for all kind of Linux articles

2. Suorita komentosarja, kun epäonnistuu

Joskus bash voi jatkaa komentosarjan suorittamista myös silloin, kun tietty komento epäonnistuu, mikä vaikuttaa loppukomentoon (saattaa johtaa lopulta loogisiin virheisiin). Käytä alla olevaa riviä poistuaksesi komentosarjasta, kun komento epäonnistuu:

#let script exit if a command fails
set -o errexit 
OR
set -e

3. Suorita komentosarja poistuminen, kun Bash käyttää ilmoittamatonta muuttujaa

Bash voi myös yrittää käyttää pimeää komentosarjaa, joka voi aiheuttaa loogisen virheen. Käytä siksi seuraavaa riviä bash: n poistamiseksi komentosarjasta, kun se yrittää käyttää pimeää muuttujaa:

#let script exit if an unsed variable is used
set -o nounset
OR
set -u

4. Käytä kaksoislainauksia viitemuuttujiin

Kaksinkertaisten lainausmerkkien käyttö viittaamisen aikana (muuttujan arvon käyttäminen) auttaa estämään sanojen jakamisen (välilyönnin osalta) ja tarpeettoman huijaamisen (yleismerkkien tunnistamisen ja laajentamisen).

Katso alla oleva esimerkki:

#!/bin/bash
#let script exit if a command fails
set -o errexit 

#let script exit if an unsed variable is used
set -o nounset

echo "Names without double quotes" 
echo
names="Tecmint FOSSMint Linusay"
for name in $names; do
        echo "$name"
done
echo

echo "Names with double quotes" 
echo
for name in "$names"; do
        echo "$name"
done

exit 0

Tallenna tiedosto ja poistu ja suorita se seuraavasti:

$ ./names.sh

5. Käytä komentosarjojen toimintoja

Hyvin pieniä komentosarjoja lukuun ottamatta (muutamalla rivillä koodia), muista aina käyttää toimintoja koodin modulointiin ja komentosarjojen luettavuuteen ja uudelleenkäyttöön.

Syntaksi kirjoitustoiminnoille on seuraava:

function check_root(){
	command1; 
	command2;
}

OR
check_root(){
	command1; 
	command2;
}

Käytä yhden rivin koodia varten lopetusmerkkejä jokaisen komennon jälkeen seuraavasti:

check_root(){ command1; command2; }

6. Käytä merkkijonovertailuissa = =: n sijaan =

Huomaa, että == on synonyymi = : lle, joten käytä vain yhtä = -merkkiä merkkijonovertailuissa, esimerkiksi:

value1=”linux-console.net”
value2=”fossmint.com”
if [ "$value1" = "$value2" ]

7. Käytä $(komento) sijasta vanha komento korvaamiseen

Komennon korvaaminen korvaa komennon lähdöllä. Käytä komentojen korvaamiseen komentoja & # 36 (command) takalauseiden \"command \" sijaan.

Tätä suosittaa jopa shellcheck-työkalu (näyttää varoitukset ja ehdotukset shell-skripteille). Esimerkiksi:

user=`echo “$UID”`
user=$(echo “$UID”)

8. Käytä staattisten muuttujien ilmoittamiseen vain luku -toimintoa

Staattinen muuttuja ei muutu; sen arvoa ei voi muuttaa, kun se on määritetty komentosarjassa:

readonly passwd_file=”/etc/passwd”
readonly group_file=”/etc/group”

9. Käytä YMPÄRISTÖMuuttujiin isoja nimiä ja mukautettuihin muuttujiin pieniä kirjaimia

Kaikki bash-ympäristömuuttujat on nimetty isoilla kirjaimilla, joten nimeä mukautetut muuttujat pienillä kirjaimilla välttääksesi muuttujien nimiristiriidat:

#define custom variables using lowercase and use uppercase for env variables
nikto_file=”$HOME/Downloads/nikto-master/program/nikto.pl”
perl “$nikto_file” -h  “$1”

10. Suorita aina virheenkorjaus pitkille skripteille

Jos kirjoitat bash-komentosarjoja tuhansilla koodiriveillä, virheiden löytämisestä voi tulla painajainen. Korjaa ongelmat ennen komentosarjan suorittamista suorittamalla virheenkorjaus. Opi tämä vinkki lukemalla alla olevat oppaat:

  1. Kuinka Shell-komentosarjojen virheenkorjaustila otetaan käyttöön Linuxissa
  2. Kuinka syntaksi tarkistaa virheenkorjaustila kuoriskripteissä
  3. Kuinka komentojen suorittamisen seuraaminen Shell-komentosarjassa Shell-jäljityksen avulla

Siinä kaikki! Onko sinulla muita parhaita bash-komentosarjojen käytäntöjä jaettavaksi? Jos kyllä, käytä sitten alla olevaa kommenttilomaketta.