Toddoba doorsoomayaasha Bash lama filaan ah

Sii wadida taxanaha qoraalada ku saabsan ka yar oo la yaqaan hawlaha bash, waxaan ku tusi doonaa todoba doorsoome oo laga yaabo inaadan aqoon.

1) PROMPT_COMMAND

Waxaa laga yaabaa inaad horeba u taqaanay sida loo maamulo isla markiiba si aad u muujiso macluumaad kala duwan oo faa'iido leh, laakiin qof kastaa ma garanayo inaad maamuli karto amarka qolofka mar kasta oo degdegga la muujiyo.

Dhab ahaantii, hawl-wadeenno badan oo degdeg ah ayaa isticmaala doorsoomahan si ay u fuliyaan amarrada si ay u ururiyaan macluumaadka lagu soo bandhigay isla markiiba.

Isku day inaad tan ku dhex wado qolof cusub oo arag waxa ku dhacaya fadhiga:

$ PROMPT_COMMAND='echo -n "writing the prompt at " && date'

2) HISTTIMEFORMAT

Haddaad cararto history Console-ka, waxaad heli doontaa liis amarro ah oo horay loogu fuliyay akoonkaaga.

$ HISTTIMEFORMAT='I ran this at: %d/%m/%y %T '

Marka doorsoomahan la dejiyo, gelitaannada cusub waxay diiwaangeliyaan wakhtiga oo ay la socdaan amarka, markaa wax soo saarku wuxuu u ekaan doonaa sidan:

1871 waxaan ku orday kan: 01/05/19 13:38:07 : 1872/01/05 19:13:38 sudo vi /etc/resolv.conf 19 Waxaan ku orday kan: 1873/01/05 19:13:38 curl -vvv bbc.co.uk 41 Waxaan ku orday kan: 1874 /01/05 19:13:39 sudo su -

Habaynta waxay ku habboon tahay jilayaasha man date.

3) CDPATH

Si aad wakhtiga u badbaadiso khadka taliska, waxa aad isticmaali kartaa doorsoomahan si aad u badasho hagayaasha sida ugu fudud marka aad soo saarto amarada.

Sida PATH, doorsoome CDPATH waa liis waddooyin ah oo kala go'ay. Marka aad socodsiiso amarka cd oo leh waddo qaraabo ah (ie, majiro wax-ka-hortagga), sida caadiga ah qolofku wuxuu u eegaa galka deegaankaaga si uu u helo magacyo isbarbar dhigaya. CDPATH waxay raadin doontaa waddooyinka aad siisay hagaha aad rabto inaad tagto.

Haddii aad rakibto CDPATH sidan:

$ CDPATH=/:/lib

ka dibna geli:

$ cd /home
$ cd tmp

markaas ayaad had iyo jeer ku dambayn doontaa /tmp meel kastoo aad joogto.

Si kastaba ha ahaatee, taxaddar, sababtoo ah haddii aadan ku qeexin midka maxaliga ah ee liiska (.Galka, markaa ma awoodi doontid inaad abuurto gal kale tmp oo u tag sida caadiga ah:

$ cd /home
$ mkdir tmp
$ cd tmp
$ pwd
/tmp

Haah!

Tani waxay la mid tahay jahawareerkii aan dareemay markii aan ogaaday in galka maxaliga ahi aanu ku jirin doorsoomaha caanka ah PATHLaakiin waa inaad ku samaysaa doorsoomiyaha PATH-gaaga sababtoo ah waxaa laga yaabaa in lagugu khiyaaneeyo inaad amar been abuur ah ka sameyso kood la soo dejiyay.

kayga waxa loo dejiyay barta bilawga ah:

CDPATH=.:/space:/etc:/var/lib:/usr/share:/opt

4) SHLVL

Weligaa ma is weydiisay, adigoo qoraya exit miyay kaa saari doontaa qolofkaaga hadda jira qolof kale oo "waalid", mise waxay xidhi doontaa gabi ahaanba daaqada console?

Doorsoomayaashani waxa ay isha ku hayaan sida qoto dheer ee aad buul ugu dhex jirto qolofka bashka. Haddii aad abuurto terminal cusub, waxa loo dejiyay 1:

$ echo $SHLVL
1

Kadib, haddii aad bilowdo hab kale oo qolof ah, tiradu way kordhisaa:

$ bash
$ echo $SHLVL
2

Tani waxay noqon kartaa mid aad waxtar u leh qoraallada halkaas oo aadan hubin inaad baxdo iyo in kale, ama la soco halka lagugu dhejiyay.

5) LINENO

Doorsoomuhu wuxuu kaloo faa'iido u leeyahay falanqaynta xaaladda hadda jirta iyo ciribtirka LINENO, kaas oo ka warbixinaya tirada amarrada lagu fuliyay fadhiga ilaa hadda:

$ bash
$ echo $LINENO
1
$ echo $LINENO
2

Tan waxaa inta badan la adeegsadaa marka la saxayo qoraallada. Gelida khadadka sida echo DEBUG:$LINENO, waxaad si dhakhso ah u go'aamin kartaa meesha qoraalka aad joogto (ama aanad ahayn).

6) REPLY

Haddii, aniga oo kale, aad inta badan u qorto kood sidan oo kale:

$ read input
echo do something with $input

Waxaa laga yaabaa inay ku noqoto la yaab inaadan u baahnayn inaad ka walwasho abuurista doorsoomaha gabi ahaanba:

$ read
echo do something with $REPLY

Tani waxay samaynaysaa wax la mid ah.

7) TMOUT

Si looga fogaado ku sii jiridda server-yada wax-soo-saarka muddo dheer sababo ammaan dartood ama si lama filaan ah ugu socodsiinta shay khatar ah terminalka khaldan, dejinta doorsoomahani wuxuu u dhaqmaa sidii ilaalin.

Haddii aan waxba la gelin tiro ilbiriqsi ah, qoloftu way ka baxdaa.

Taasi waa, tani waa beddelka sleep 1 && exit:

$ TMOUT=1

Source: www.habr.com

Add a comment