10 Awọn imọran to wulo fun kikọ awọn iwe afọwọkọ Bash ti o munadoko ni Linux


iṣakoso eto fun ṣiṣe awọn iṣẹ adaṣe, idagbasoke awọn ohun elo/irinṣẹ ti o rọrun tuntun lati mẹnuba ṣugbọn diẹ.

Ninu nkan yii, a yoo pin awọn imọran to wulo ati ilowo fun 10 fun kikọ awọn iwe afọwọkọ bash ti o munadoko ati igbẹkẹle ati pe wọn pẹlu:

1. Nigbagbogbo Lo Awọn asọye ni Awọn iwe afọwọkọ

Eyi jẹ iṣe iṣeduro ti a ko lo si kikọ si ikarahun ṣugbọn gbogbo iru siseto miiran. Kikọ awọn asọye ninu iwe afọwọkọ kan ṣe iranlọwọ fun ọ tabi omiiran lati lọ nipasẹ iwe afọwọkọ rẹ loye kini awọn ẹya oriṣiriṣi ti iwe afọwọkọ ṣe.

Fun awọn ibẹrẹ, awọn asọye ti ṣalaye nipa lilo ami # .

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

2. Ṣe ijade iwe afọwọkọ Nigbati o ba kuna

Nigbakanna bash le tẹsiwaju lati ṣiṣẹ iwe afọwọkọ paapaa nigbati aṣẹ kan ba kuna, nitorinaa o kan iyoku iwe afọwọkọ (le bajẹ ni awọn aṣiṣe aitọ). Lo laini isalẹ lati jade kuro ni iwe afọwọkọ nigbati aṣẹ kan ba kuna:

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

3. Ṣe Jade kuro ni Akosile Nigbati Bash Nlo Iyipada ti ko ni iyipada

Bash tun le gbiyanju lati lo iwe afọwọkọ ti a ko ṣalaye eyiti o le fa aṣiṣe kannaa. Nitorinaa lo ila atẹle lati kọ bash lati jade kuro ni iwe afọwọkọ nigbati o ba gbiyanju lati lo iyipada ti ko ṣalaye:

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

4. Lo Awọn agbasọ meji lati tọka Awọn oniyipada

Lilo awọn agbasọ meji nigba itọka (lilo iye ti oniyipada kan) ṣe iranlọwọ lati ṣe idiwọ pipin ọrọ (nipa aaye funfun) ati didiye ti ko ni dandan (riri ati fifa awọn kaadi egan sii).

Ṣayẹwo apẹẹrẹ ni isalẹ:

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

Fipamọ faili naa ki o jade, lẹhinna ṣiṣe bi atẹle:

$ ./names.sh

5. Lo awọn iṣẹ ni Awọn iwe afọwọkọ

Ayafi fun awọn iwe afọwọkọ kekere pupọ (pẹlu awọn ila diẹ ti koodu), ranti nigbagbogbo lati lo awọn iṣẹ lati ṣe atunṣe koodu rẹ ati ṣe awọn iwe afọwọkọ diẹ sii ti o ṣee ka ati tun ṣee lo.

Iṣeduro fun awọn iṣẹ kikọ ni atẹle:

function check_root(){
	command1; 
	command2;
}

OR
check_root(){
	command1; 
	command2;
}

Fun koodu laini kan, lo awọn ohun kikọ ifopin lẹhin aṣẹ kọọkan bii eleyi:

check_root(){ command1; command2; }

6. Lo = dipo == fun Awọn afiwe Awọn okun

Akiyesi pe == jẹ synonym fun = , nitorinaa lo ẹyọkan = fun awọn afiwe okun, fun apẹẹrẹ:

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

7. Lo $(pipaṣẹ) dipo ogún ‘aṣẹ’ fun Rirọpo

Rirọpo aṣẹ rọpo aṣẹ kan pẹlu iṣelọpọ rẹ. Lo & # 36 (pipaṣẹ) dipo awọn ẹhin ẹhin \"pipaṣẹ \" fun aropo aṣẹ.

Eyi ni a ṣe iṣeduro paapaa nipasẹ ohun elo ọta ibọn (fihan awọn ikilọ ati awọn didaba fun awọn iwe afọwọkọ ikarahun). Fun apere:

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

8. Lo Ka-nikan lati kede Awọn oniyipada Aimi

Oniyipada aimi ko yipada; iye rẹ ko le yipada ni kete ti o ti ṣalaye ninu iwe afọwọkọ kan:

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

9. Lo Awọn orukọ Oke-nla fun Awọn oniyipada Ayika ati kekere fun Awọn oniyipada Aṣa

Gbogbo awọn oniyipada ayika bash ti wa ni orukọ pẹlu awọn lẹta nla, nitorinaa lo awọn lẹta kekere lati lorukọ awọn oniyipada aṣa rẹ lati yago fun awọn ariyanjiyan orukọ oniyipada:

#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. Ṣe N ṣatunṣe aṣiṣe nigbagbogbo fun awọn iwe afọwọkọ gigun

Ti o ba nkọ awọn iwe afọwọkọ bash pẹlu ẹgbẹẹgbẹrun awọn ila ti koodu, wiwa awọn aṣiṣe le di alaburuku. Lati ṣe atunṣe awọn nkan ni rọọrun ṣaaju ṣiṣe iwe afọwọkọ kan, ṣe atunṣe kan. Titunto si imọran yii nipa kika nipasẹ awọn itọsọna ti a pese ni isalẹ:

  1. Bii o ṣe le Jeki Ipo n ṣatunṣe aṣiṣe Ikarahun ni Linux
  2. Bii o ṣe le ṣe Ipo N ṣatunṣe aṣiṣe Sintasi ni Awọn iwe afọwọkọ Shell
  3. Bii a ṣe le Wa ipaniyan Awọn pipaṣẹ ni Ikarahun Ikarahun pẹlu Ṣiṣawari Ikarahun

Gbogbo ẹ niyẹn! Ṣe o ni awọn iṣe afọwọkọ bash miiran ti o dara julọ lati pin? Ti o ba bẹẹni, lẹhinna lo fọọmu asọye ni isalẹ lati ṣe eyi.