Bii O ṣe le Jeki Ipo n ṣatunṣe aṣiṣe Ikarahun ni Lainos


Iwe afọwọkọ kan jẹ atokọ ti awọn ofin ti o fipamọ sinu faili kan. Dipo ṣiṣe awọn ọkọọkan awọn aṣẹ nipa titẹ wọn lẹkọọkan ni gbogbo igba lori ebute naa, olumulo eto kan le tọju gbogbo wọn (awọn aṣẹ) ninu faili kan ati leralera pe faili naa lati tun ṣe awọn ofin ni igba pupọ.

Lakoko ti o nkọ kikọ tabi ni awọn ipele akọkọ ti awọn iwe afọwọkọ kikọ, a bẹrẹ ni deede nipa kikọ awọn iwe afọwọkọ kekere tabi kukuru pẹlu awọn ila diẹ ti awọn ofin. Ati pe a maa n ṣatunṣe iru awọn iwe afọwọkọ bẹẹ nipa ṣiṣe ohunkohun diẹ sii ju wiwo iṣiṣẹ wọn ati rii daju pe wọn ṣiṣẹ bi a ti pinnu.

Sibẹsibẹ, bi a ṣe bẹrẹ lati kọ awọn iwe afọwọkọ ti o gun pupọ ati ti ilọsiwaju pẹlu ẹgbẹẹgbẹrun awọn ila ti awọn ofin, fun apẹẹrẹ awọn iwe afọwọkọ ti o ṣe atunṣe awọn eto eto, ṣe awọn ifipamọ pataki lori awọn nẹtiwọọki ati ọpọlọpọ diẹ sii, a yoo mọ pe wiwo nikan ni abajade iwe afọwọkọ kii ṣe to lati wa awọn idun laarin iwe afọwọkọ kan.

Nitorinaa, ninu n ṣatunṣe aṣiṣe iwe ikarahun yii ni jara Lainos, a yoo rin nipasẹ bawo ni a ṣe le ṣe n ṣatunṣe aṣiṣe akọọlẹ ikarahun, gbe siwaju lati ṣalaye awọn ipo n ṣatunṣe aṣiṣe iwe ikarahun oriṣiriṣi ati bi a ṣe le lo wọn ninu jara ti o tẹle.

Bii O ṣe le Bẹrẹ Iwe afọwọkọ kan

Iwe-afọwọkọ kan yatọ si awọn faili miiran nipasẹ laini akọkọ rẹ, ti o ni #! (She-bang - ṣalaye iru faili naa) ati orukọ ọna kan (ọna si onitumọ) eyiti o sọ fun eto naa pe faili naa jẹ ikojọpọ awọn aṣẹ ti yoo tumọ nipasẹ eto ti a ṣalaye (onitumọ).

Ni isalẹ awọn apẹẹrẹ ti\"awọn laini akọkọ" ni oriṣi awọn iwe afọwọkọ:

#!/bin/sh          [For sh scripting]
#!/bin/bash        [For bash scripting] 
#!/usr/bin/perl    [For perl programming]
#!/bin/awk -f      [For awk scripting]   

Akiyesi: Laini akọkọ tabi #! ni a le fi silẹ ti o ba jẹ pe iwe afọwọkọ kan ni ti ṣeto ti awọn aṣẹ eto deede, laisi eyikeyi awọn itọnisọna ikarahun inu.

Bii O ṣe le Ṣiṣe Akara Ikarahun Kan ni Lainos

Iṣeduro aṣa fun pipe iwe afọwọkọ ikarahun ni:

$ script_name  argument1 ... argumentN

Fọọmu miiran ti o ṣee ṣe jẹ nipa sisọ ikarahun kedere ti yoo ṣiṣẹ iwe afọwọkọ bi isalẹ:

$ shell script_name argument1 ... argumentN  

Fun apere:

$ /bin/bash script_name argument1 ... argumentN     [For bash scripting]
$ /bin/ksh script_name argument1 ... argumentN      [For ksh scripting]
$ /bin/sh script_name argument1 ... argumentN       [For sh scripting]

Fun awọn iwe afọwọkọ ti ko ni #! bi laini akọkọ ati pe nikan ni awọn aṣẹ eto ipilẹ gẹgẹbi eyi ti o wa ni isalẹ:

#script containing standard system commands
cd /home/$USER
mkdir tmp
echo "tmp directory created under /home/$USER"

Nìkan jẹ ki o ṣiṣẹ ati ṣiṣe bi atẹle:

$ chmod +x  script_name
$ ./script_name 

Awọn ọna ti Muu ṣiṣẹ Ipo n ṣatunṣe aṣiṣe Ikarahun

Ni isalẹ ni awọn aṣayan n ṣatunṣe aṣiṣe afọwọkọ ikarahun akọkọ:

  1. -v (kukuru fun ọrọ-ọrọ) - sọ fun ikarahun lati fi gbogbo awọn ila han ni iwe afọwọkọ lakoko ti wọn ka, o mu ipo ọrọ-ọrọ ṣiṣẹ.
  2. -n (kukuru fun noexec tabi ko si ecxecution) - kọ ikarahun ka gbogbo awọn aṣẹ, sibẹsibẹ ko ṣe wọn. Awọn aṣayan yii mu ipo iṣayẹwo sintasi ṣiṣẹ.
  3. -x (kukuru fun xtrace tabi ipasẹ ipaniyan) - sọ fun ikarahun lati han gbogbo awọn ofin ati awọn ariyanjiyan wọn lori ebute lakoko ti wọn pa wọn. Aṣayan yii n jẹ ki ipo wiwa kakiri ikarahun.

Ilana akọkọ jẹ nipa yiyipada laini akọkọ ti iwe afọwọkọ bi isalẹ, eyi yoo jẹ ki n ṣatunṣe aṣiṣe gbogbo iwe afọwọkọ.

#!/bin/sh option(s)

Ni fọọmu ti o wa loke, aṣayan le jẹ ọkan tabi apapo awọn aṣayan n ṣatunṣe aṣiṣe loke.

Ekeji ni nipasẹ pipe ikarahun pẹlu awọn aṣayan n ṣatunṣe bi atẹle, ọna yii yoo tun tan n ṣatunṣe aṣiṣe gbogbo iwe afọwọkọ.

$ shell option(s) script_name argument1 ... argumentN

Fun apere:

$ /bin/bash option(s) script_name argument1 ... argumentN   

Ọna kẹta ni nipa lilo pipaṣẹ ti a ṣe sinu ti a ṣeto lati ṣatunṣe abala apakan ti a fun ni iwe afọwọkọ ikarahun bii iṣẹ kan. Ilana yii jẹ pataki, bi o ṣe gba wa laaye lati muu n ṣatunṣe aṣiṣe ṣiṣẹ ni eyikeyi apakan ti iwe afọwọkọ ikarahun kan.

A le tan ipo n ṣatunṣe aṣiṣe nipa lilo pipaṣẹ ṣeto ni fọọmu ni isalẹ, nibiti aṣayan jẹ eyikeyi awọn aṣayan n ṣatunṣe aṣiṣe.

$ set option 

Lati mu ipo n ṣatunṣe aṣiṣe ṣiṣẹ, lo:

$ set -option

Lati mu ipo n ṣatunṣe aṣiṣe ṣiṣẹ, lo:

$ set +option

Ni afikun, ti a ba ti ṣiṣẹ ọpọlọpọ awọn ipo n ṣatunṣe aṣiṣe ni awọn oriṣiriṣi awọn apa ti iwe afọwọkọ ikarahun kan, a le mu gbogbo wọn pa ni ẹẹkan bii:

$ set -

Iyẹn ni fun bayi pẹlu muu ṣiṣẹ n ṣatunṣe aṣiṣe ikarahun. Gẹgẹbi a ti rii, a le ṣe atunyẹwo gbogbo iwe afọwọkọ tabi apakan kan pato ti iwe afọwọkọ kan.

Ninu iṣẹlẹ meji ti nbọ ti jara yii, a yoo bo bii a ṣe le lo awọn aṣayan n ṣatunṣe aṣiṣe iwe ikarahun lati ṣe alaye ọrọ-ọrọ, iṣayẹwo sintasi ati awọn ipo n ṣatunṣe aṣiṣe ikarahun pẹlu awọn apẹẹrẹ.

Ni pataki, maṣe gbagbe lati beere ibeere eyikeyi nipa itọsọna yii tabi boya pese esi wa nipasẹ apakan asọye ni isalẹ. Titi di igba naa, wa ni asopọ si Tecmint.