Ubadilishaji Unaobadilika Ulioorodheshwa na Vigeu Vilivyoainishwa Awali vya BASH katika Linux - Sehemu ya 11


Nakala mbili za mwisho kwenye BASH Shell, ambapo tulijadili anuwai kwa undani zilithaminiwa sana kati ya wasomaji wetu. Sisi kama Tecmint-Team tunapenda sana kukupa mada za Hivi Punde, zilizosasishwa na zinazofaa zinazotolewa kwa undani. Zaidi ya hayo tunajaribu kugusa mitazamo mikuu ya mada zinazolingana.

Hapa kuna nakala ya mwisho juu ya Vigezo vya Linux ambapo tutaona ubadilishaji wa vigeu na vigeu vilivyofafanuliwa katika Shell kabla ya kufunga mada hii.

Bash hufanya badala ya kutofautisha kabla ya amri kutekelezwa kweli. Linux Bash Shell hutafuta ishara zote za '$' kabla ya kutekeleza amri na kuibadilisha na thamani ya kutofautisha. Mchakato wa kubadilisha Bash Variable unafanywa mara moja tu. Je, ikiwa tuna vigeu vilivyoorodheshwa?

Kumbuka: Kwa kutofautisha kwa kiota tunamaanisha, kutofautisha kutangazwa ndani ya kutofautisha. Wacha tuone hali iliyo hapo juu katika mfano hapa chini.

Tangaza kigezo ambacho ni cha Kusoma Pekee na Kinachotekelezeka kama ilivyo hapo chini.

[email :~$ declare -rx Linux_best_website="linux-console.net"

Angalia thamani ya variable iliyohifadhiwa.

[email :~$ printf "%s" "$Linux_best_website" 

linux-console.net

Sasa tangaza kigezo kingine ambacho tena ni cha Kusoma Pekee na Kinachoweza Kutekelezwa.

[email :~$ declare -rx Linux_website="Linux_best_website"

Sasa hali ni kwamba, tumefafanua vigezo viwili.

‘Linux_best_website’, ambayo thamani yake ni \linux-console.net
na, ‘Linux_tovuti’, ambayo thamani yake ni \Linux_best_tovuti

Je, matokeo yatakuwa nini, ikiwa tutaendesha amri iliyo chini ya mstari mmoja?

[email :~$ printf "%s" "$Linux_website"

Inapaswa kwanza kuchukua nafasi ya '$Linux_website', yenye thamani \Linux_best_tovuti” na kisha \$Linux_best_website” ni kigezo tena. thamani ambayo ni \linux-console.net”. Kwa hivyo matokeo ya mwisho ya kuendesha amri iliyo hapa chini yanapaswa kuwa.

[email :~$ printf "%s" "$Linux_website" 

linux-console.net

Lakini kwa bahati mbaya, hii sio hali, matokeo tunayopata ni Linux_best_website.

Sababu? Ndio! Bash badala ya thamani ya kutofautisha mara moja tu. Vipi kuhusu maandishi na programu changamano ambapo tunahitaji kubadilisha viambishi mara kwa mara na vile vile mahitaji ya kubadilisha kigezo zaidi ya mara moja?

Ifuatayo inakuja amri ‘eval’ ambayo hufanya kazi ya ziada ya ubadilishanaji tofauti zaidi ya mara moja kwenye hati. Hapa kuna mfano wa kufanya kazi nzima kuwa wazi kama glasi.

Tamka kigezo x, ambacho thamani yake ni 10.

[email :~/Desktop$ declare x=10

Angalia thamani ya kigezo x, ambacho tumefafanua hivi punde.

[email :~/Desktop$ echo $yx

x10

Tamka kigezo y, ambacho thamani yake ni x.

[email :~/Desktop$ declare y=x

Angalia thamani ya kigezo y, ambacho tumefafanua hivi punde.

[email :~/Desktop$ echo $y 

x

Hili hapa ni tatizo la BASH ubadilishaji wa kibadilishaji mara moja, ambao haufanyi mzunguko wa ziada wa ubadilishanaji tofauti. Tunatumia amri ya ‘eval’ kurekebisha hili.

[email :~/Desktop$ eval y=$x

Sasa angalia Thamani ya kutofautisha ‘y’.

[email :~/Desktop$ echo $y 

10

Hurrah! Suala lilirekebishwa na amri ya 'eval' ilishinda mbio :)

Bila kusahau, amri ya ‘eval’ inasaidia sana katika programu kubwa za hati na ni zana inayofaa sana.

Sehemu ya mwisho lakini sio ndogo zaidi ya chapisho hili ni anuwai zilizoainishwa za BASH. Hapana! Usiogope kuona orodha hii. Huhitaji kamwe kukumbuka orodha nzima kabla ya kuanza kuandika hati isipokuwa chache. Kama sehemu ya mchakato wa kujifunza, tunawasilisha Orodha ya kutofautisha iliyoainishwa awali ya BASH.

Kuna orodha kubwa ya Tofauti iliyofafanuliwa ya BASH. Tumejaribu kutoa orodha ya zinazotumiwa mara nyingi.

Hayo ni yote kwa sasa. Nitakuwa hapa tena na makala nyingine ya kuvutia. Hadi wakati huo endelea kutazama na uunganishwe na TecMint. Usisahau kutupatia maoni yako muhimu katika sehemu ya maoni hapa chini.