10 nyttige tip til at skrive effektive Bash-scripts i Linux


systemadministration til automatisering af opgaver, udvikling af nye enkle værktøjer/værktøjer for blot at nævne nogle få.

I denne artikel deler vi 10 nyttige og praktiske tip til at skrive effektive og pålidelige bash-scripts, og de inkluderer:

1. Brug altid kommentarer i scripts

Dette er en anbefalet praksis, som ikke kun anvendes til shell-scripting, men alle andre former for programmering. Skrivning af kommentarer i et script hjælper dig eller andre, der gennemgår dit script, med at forstå, hvad de forskellige dele af scriptet gør.

Til at begynde med defineres kommentarer ved hjælp af tegnet # .

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

2. Lav en scriptafslutning, når det mislykkes

Nogle gange kan bash fortsætte med at udføre et script, selv når en bestemt kommando mislykkes, hvilket påvirker resten af scriptet (kan i sidste ende resultere i logiske fejl). Brug linjen nedenfor for at afslutte et script, når en kommando mislykkes:

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

3. Lav en scriptafslutning, når Bash bruger en sortvariabel

Bash kan også forsøge at bruge et sort sort script, der kan forårsage en logisk fejl. Brug derfor følgende linje til at instruere bash om at afslutte et script, når det forsøger at bruge en sortvariabel:

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

4. Brug dobbelt citater til reference variabler

Brug af dobbelt anførselstegn under henvisning (ved hjælp af en værdi af en variabel) hjælper med at forhindre opdeling af ord (vedrørende hvidt mellemrum) og unødvendig globbing (genkendelse og udvidelse af jokertegn).

Se eksemplet nedenfor:

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

Gem filen og afslut, og kør den således:

$ ./names.sh

5. Brug funktioner i scripts

Bortset fra meget små scripts (med et par kodelinjer), skal du altid huske at bruge funktioner til at modulere din kode og gøre scripts mere læsbare og genanvendelige.

Syntaksen for skrivefunktioner er som følger:

function check_root(){
	command1; 
	command2;
}

OR
check_root(){
	command1; 
	command2;
}

For en linjekode skal du bruge opsigelsestegn efter hver kommando som denne:

check_root(){ command1; command2; }

6. Brug = i stedet for == til streng sammenligninger

Bemærk, at == er et synonym for = , og brug derfor kun en enkelt = til strengesammenligning, for eksempel:

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

7. Brug $ (kommando) i stedet for ældre 'kommando' til erstatning

Kommandosubstitution erstatter en kommando med dens output. Brug & # 36 (kommando) i stedet for backquotes \"command \" til kommandosubstitution.

Dette anbefales selv ved shellcheck-værktøjet (viser advarsler og forslag til shell-scripts). For eksempel:

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

8. Brug skrivebeskyttet til at erklære statiske variabler

En statisk variabel ændres ikke; dens værdi kan ikke ændres, når den er defineret i et script:

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

9. Brug store bogstaver til MILJØvariabler og små bogstaver til brugerdefinerede variabler

Alle bash-miljøvariabler er navngivet med store bogstaver, brug derfor små bogstaver til at navngive dine brugerdefinerede variabler for at undgå variablenavnkonflikter:

#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. Udfør altid fejlfinding for lange scripts

Hvis du skriver bash-scripts med tusinder af linjer med kode, kan det være et mareridt at finde fejl. For at rette op på tingene, før du udfører et script, skal du udføre fejlfinding. Mestre dette tip ved at læse gennem nedenstående guider:

  1. Sådan aktiveres shell script-fejlretningstilstand i Linux
  2. Sådan udføres syntaks-kontrol af fejlretningstilstand i shell-scripts
  3. Sådan spores udførelse af kommandoer i Shell Script med Shell Tracing

Det er alt! Har du andre bedste bash scripting-fremgangsmåder at dele? Hvis ja, så brug nedenstående kommentarformular til at gøre det.