Itan-nkan iyipada Nested ati Awọn oniyipada BASH ti a ṣalaye tẹlẹ ni Linux - Apá 11
Nkan meji ti o kẹhin lori BASH Shell, nibiti a ti ṣe ijiroro awọn oniye ni alaye ni a ṣeyin pupọ laarin awọn onkawe wa. A bi Tecmint-Team fẹran pupọ lati fun ọ ni Titun, Imudojuiwọn ati awọn akọle ti o yẹ ti o bo ni awọn alaye. Pẹlupẹlu a nigbagbogbo gbiyanju lati fi ọwọ kan awọn iwo pataki ti awọn akọle ti o baamu.
Eyi ni nkan ti o kẹhin lori Awọn oniyipada Linux nibiti a yoo rii iyipada awọn oniyipada ati awọn oniyipada ti a ṣalaye ni Ikarahun ṣaaju ki o to pa koko yii.
Bash ṣe iyipada iyipada ṣaaju pipaṣẹ naa ni pipa gan. Wiwa Linux Bash Shell fun gbogbo ami ‘$’ ṣaaju ṣiṣe pipaṣẹ ki o rọpo rẹ pẹlu iye iyipada. Ilana ti aropo Bash ayípadà ṣee ṣe ni ẹẹkan. Kini ti a ba ni awọn oniye itẹ-ẹiyẹ?
Akiyesi: Nipa oniye oni iteeye a tumọ si, oniyipada ti o kede inu oniyipada. Jẹ ki a rii iṣẹlẹ ti o wa loke ninu apẹẹrẹ ni isalẹ.
Ṣe ikede oniyipada eyiti o jẹ Ka-nikan ati Ṣiṣẹ bi isalẹ.
[email :~$ declare -rx Linux_best_website="linux-console.net"
Ṣayẹwo iye ti oniyipada ti o fipamọ.
[email :~$ printf "%s" "$Linux_best_website" linux-console.net
Bayi sọ oniyipada miiran eyiti o tun jẹ Ka-nikan ati Ṣiṣẹ.
[email :~$ declare -rx Linux_website="Linux_best_website"
Bayi ipo naa jẹ, a ti ṣalaye awọn oniyipada meji.
'Linux_best_website', iye ti eyi ni\"linux-console.net"
ati, 'Linux_website', iye ti eyi jẹ\"Linux_best_website"
Kini yoo jẹ abajade, ti a ba ṣiṣẹ aṣẹ ila ila kan ni isalẹ?
[email :~$ printf "%s" "$Linux_website"
O yẹ ki o kọkọ rọpo oniyipada ' $Linux_website ', pẹlu iye\" Linux_best_website " ati lẹhinna\" $Linux_best_website " jẹ lẹẹkansi oniyipada kan iye eyi ti o jẹ\" linux-console.net ". Nitorina iṣuṣẹ ikẹhin ti ṣiṣe pipaṣẹ isalẹ yẹ ki o jẹ.
[email :~$ printf "%s" "$Linux_website" linux-console.net
Ṣugbọn laanu, eyi kii ṣe ipo naa, iṣelọpọ ti a ngba ni Linux_best_website .
Idi? Yup! Bash rọpo iye ti oniyipada ni ẹẹkan. Kini nipa awọn iwe afọwọkọ ti o nira ati awọn eto nibiti a nilo lati rọpo awọn oniyipada nigbagbogbo bi daradara bi awọn iwulo lati rọpo oniyipada ju ẹẹkan lọ?
Eyi ni aṣẹ ‘ eval ’ wa eyiti o ṣe iṣẹ afikun ti rirọpo iyipada diẹ sii ju ẹẹkan ninu iwe afọwọkọ kan. Eyi ni apẹẹrẹ lati jẹ ki gbogbo ṣiṣẹ bi o ṣe kedere bi gilasi.
Ṣe ikede oniyipada kan x , iye ti eyiti o jẹ 10 .
[email :~/Desktop$ declare x=10
Ṣayẹwo iye ti oniyipada x , a kan ṣalaye.
[email :~/Desktop$ echo $yx x10
Sọ oniyipada kan y , iye ti eyiti o jẹ x .
[email :~/Desktop$ declare y=x
Ṣayẹwo iye ti oniyipada y , a ṣalaye.
[email :~/Desktop$ echo $y x
Eyi ni iṣoro ti BASH rirọpo iyipada akoko kan, eyiti ko ṣe iyipo afikun ti iyipada iyipada. A n lo ‘ eval ‘ pipaṣẹ lati ṣatunṣe eyi.
[email :~/Desktop$ eval y=$x
Bayi ṣayẹwo Iye ti iyipada ‘ y ‘.
[email :~/Desktop$ echo $y 10
Yara! Ti ṣe agbekalẹ ọrọ naa ati pe 'eval' pipaṣẹ ṣẹgun ije :)
Lai mẹnuba, ‘ eval ‘ pipaṣẹ ṣe iranlọwọ pupọ ninu awọn eto iwe afọwọkọ nla ati pe o jẹ ọpa ti o ni ọwọ pupọ.
Ikẹhin ṣugbọn kii ṣe apakan ti o kere julọ ti ifiweranṣẹ yii jẹ awọn oniyipada tẹlẹ BASH. Rárá! Maṣe ni ijaaya ri atokọ yii. Iwọ ko nilo lati ranti gbogbo atokọ ṣaaju ki o to bẹrẹ kikọ awọn iwe afọwọkọ ayafi diẹ. Gẹgẹbi apakan ti ilana ẹkọ, a n ṣe afihan Akojọ oniyipada tẹlẹ BASH.
Atokọ nla wa ti tẹlẹ BASH Oniyipada. A ti gbiyanju lati ṣe atokọ ti lilo nigbagbogbo.
Iyẹn ni gbogbo fun bayi. Emi yoo wa nibi lẹẹkansi pẹlu nkan miiran ti o nifẹ. Titi lẹhinna wa ni aifwy ati sopọ si TecMint. Maṣe gbagbe lati pese wa pẹlu awọn esi rẹ ti o niyelori ni apakan asọye ni isalẹ.