logo

Bash mainīgie

Mainīgie lielumi ir būtiska programmēšanas sastāvdaļa, vai arī mēs varam teikt, ka tie ir programmēšanas valodas gars. Mainīgie norāda atmiņas vietu, izmantojot rakstzīmes, ciparus un burtciparus. Tos izmanto, lai uz tiem atsauktos un ar tiem manipulētu datorprogrammā.

Kādi ir mainīgie?

Mainīgie ir konteineri, kuros kā vērtība tajos tiek glabāti dati vai noderīga informācija. Tālāk ir norādīta mainīgā sintakse:

 Variable_name =value 

Mainīgais ir divu vārdu kombinēta forma, t.i., variēt + var, kas nozīmē, ka tā vērtību var mainīt un to var izmantot vairākas reizes.

8 līdz 1 multipleksors

Mainīgais ir zināma kā pagaidu krātuve jebkāda veida datiem, piemēram, veseliem skaitļiem, pludiņam, rakstzīmei utt. Mainīgā nosaukumā var iekļaut alfabēts, cipari un pasvītra , un tā nosaukumu var sākt tikai ar alfabētu un pasvītrojumu.

Piezīme. Mēs nevaram definēt mainīgā nosaukumu, kas sākas ar jebkuru ciparu.

Kas ir Bash mainīgie?

Mēs nevaram izmantot bash mainīgos bez atbilstošas ​​informācijas ( sintakse, datu tipi, veidi, darbs ) par to, tāpēc apskatīsim šo īso apmācību, lai iegūtu atbilstošu pārskatu par Bash mainīgajiem.

Sākumā ziniet sintaksi.

Sintakse:

 Variable_name=value 

Noteikumi, kas iestatīti Bash mainīgo definēšanai:

  1. Mainīgā nosaukuma priekšā pievienojiet dolāra ($) zīmi, lasot vai drukājot mainīgo.
  2. Atstājiet dolāra zīmi ($), iestatot mainīgo ar jebkuru vērtību.
  3. Mainīgā nosaukums var būt burtu un ciparu, vai arī tas var būt rakstīts ar pasvītrojumu (_).
  4. Mainīgā nosaukums ir reģistrjutīgs: x un X tiek uzskatīti par diviem dažādiem mainīgajiem.
  5. mainīgā nosaukumu var rakstīt vai nu ar LIELAJĀ_LIETOJUMA, vai LOWER_CASE burtiem, vai ar abu kombināciju, kā vēlaties.
  6. Mainīgo var novietot jebkurā vietā Bash skriptā vai komandrindā, jo izpildlaikā Bash to aizstās ar tai piešķirto vērtību. Tas kļuva iespējams, jo tika veikta aizstāšana pirms komandas palaišanas.
  7. Starp mainīgā nosaukumu un tā vērtību nedrīkst būt atstarpes vienādības zīmes (=) pusēs. Tālāk ir sniegti daži piemēri Nederīgi mainīgie starp tām ir atstarpes (apzīmētas ar punktiem ...), kā norādīts tālāk:
    var1=...mainīgais1
    var2...=mainīgais2
    var3...=...mainīgais3
  8. Lai definētu mainīgo ar vienas rakstzīmes vērtību, nav jāizmanto pēdiņas (vienas vai dubultās), piemēram, var1=mainīgs . Lai mainīgā ievadītu vairākus vārdus vai virkni kā vienu vienumu, izmantojiet pēdiņas, lai iekļautu saturu šajā mainīgajā.
    • Viens citāts ('') palīdz izturēties pret katru varoni.
    • Double Quote ('') palīdz veikt aizstāšanu.

Datu veidi

Formālajās programmēšanas valodās mainīgā deklarēšanas laikā ir jādefinē jebkura mainīgā datu tips. Piemēram:

 int year=2012 char comp_name='jtp' 

Bet Bash gadījumā jums nav jādefinē neviena mainīgā datu tips mainīgā deklarēšanas laikā. Bash mainīgie ir neierakstīts , kas nozīmē, ka vienkārši ierakstiet mainīgā nosaukumu, piešķirot tā vērtību, un tas automātiski ņems vērā šo datu tipu.

Tāds, ka, ja mainīgajam piešķirat kādu skaitlisku vērtību, tas darbosies kā vesels skaitlis, un, ja mainīgajam piešķirsit rakstzīmes vērtību, tā būs String.

 year=2012 comp_name=jtp 

izmantojot echo komandu, izlasiet tos, pirms to nosaukuma piešķirot zīmi $, piemēram,

atbalss $gads
echo $name

Bash mainīgo veidi

Apvalkā vai jebkurā UNIX sistēmā ir divu veidu mainīgie.

  1. Sistēmas definētie mainīgie
  2. Lietotāja definēti mainīgie

1. Sistēmas noteiktie mainīgie: Šie ir iepriekš noteikti mainīgie, jo tos izveido un uztur pati LINUX operētājsistēma. To standarta vienošanās ir tāda, ka parasti tie tiek definēti ar lielajiem burtiem, t.i., LIELIE_LIETI. Tātad ikreiz, kad redzat mainīgo, kas definēts ar lielajiem burtiem, visticamāk, tie ir sistēmas definētie mainīgie.

Tie ir šādi sistēmas definētie mainīgie, kā norādīts tālāk:

1. BASH apzīmē čaulas nosaukumu.

Piemērs:

 BASH=/usr/bin/bash 

2. BASH_VERSION norāda čaulas versiju, kuru satur Bash.

Piemērs:

 BASH_VERSION=4.2.46(2) 

3. SLEJAS norādiet nr. kolonnu mūsu ekrānam.

Piemērs:

 COLUMNS=80 

4. MĀJAS norāda lietotāja mājas direktoriju.

Piemērs:

 HOME=/home/jatpoint 

5. LOGNAME norāda reģistrēšanas lietotājvārdu.

Piemērs:

 LOGNAME=javatpoint 

6. OSTĪPS norāda OS veidu.

Piemērs:

 OSTYPE=linux-gnu 

7. PWD apzīmē pašreizējo darba direktoriju.

Piemērs:

 PWD=/home/javatpoint 

8. LIETOTĀJVĀRDS norāda pašlaik reģistrētā lietotāja vārdu.

Piemērs:

 USERNAME=javatpoint 

Lai uzzinātu šo mainīgo sarakstu savā sistēmā, ierakstiet komandas komplekts, apv , un printenv komandrindas terminālā šādi:

1. Ievadot komplekts komandu.

Izvade:

Bash mainīgie

2. Ierakstot env komandu

Izvade:

Bash mainīgie

3. Ierakstiet komandu printenv

Izvade:

Bash mainīgie

Sauksim šos mainīgos, izmantojot Bash Shell. Tālāk ir norādītas norādītās darbības.

1. darbība: Izveidojiet skriptu ar nosaukumu Bash_sdvar un Bash konsolē ierakstiet šādu kodu:

 #! /bin/bash # Bash System-defined Variables echo $HOME # Home Directory echo $PWD # current working directory echo $BASH # Bash shell name echo $BASH_VERSION # Bash shell Version echo $LOGNAME # Name of the Login User echo $OSTYPE # Type of OS 

2. darbība. Apskatiet tālāk norādīto Bash konsoli:

Bash mainīgie

3. darbība. Saglabājiet un izpildiet skriptu. Tas parādīs izvadi, kā redzat zemāk redzamajā attēlā.

Izvade:

Bash mainīgie

2. Lietotāja definēti mainīgie: Šos mainīgos veido un uztur lietotājs. Parasti šāda veida mainīgie ir definēti LOWER_CASES. Nav stingru noteikumu, lai šos mainīgos rakstītu ar mazajiem burtiem. Mēs varam tos rakstīt arī ar lielajiem burtiem.

Izveidosim Bash skriptu, lai definētu šos mainīgos. Izpildiet tālāk norādītās darbības:

1. darbība. Izveidojiet skriptu ar nosaukumu bash_yard un Bash konsolē ierakstiet šādu kodu:

 #! /bin/bash # User-Defined Variables name=Peter ROLL_NO=5245325 echo 'The student name is $name and his Roll number is $ROLL_NO.' 

2. darbība. Skatiet kodu Bash konsolē.

Bash mainīgie

3. darbība. Saglabājiet un izpildiet skriptu.

Izvade:

Bash mainīgie

Bash mainīgo darbība

Pēc mainīgo lielumu pamata demonstrācijas pāriesim, lai uzzinātu, kā tie darbojas?

Bash mainīgajam parasti veicam divas darbības, kā norādīts tālāk:

  • iestatot vērtību par mainīgo
  • nolasot vērtību par to.

Mainīgo vērtību var iestatīt dažādos veidos, un visizplatītākais veids ir tieši iestatīt vērtību. Lai lasītu mainīgo, mēs varam ievietot tā nosaukumu (priekšdēli ar $ zīmi) jebkurā skripta vietā.

Bash vispirms pārbauda visus mainīgo nosaukumus tā, it kā tie būtu skriptā. Pēc tam tas interpretē katru mūsu skripta rindiņu. Pēc katra mainīgā identificēšanas tas aizstāj mainīgā nosaukumu ar tam piešķirto vērtību. Galu galā tas interpretē/palaiž šo koda rindiņu un turpina šo procesu katrai mūsu skripta kodētajai rindai.

PIEZĪME. Abi Bash mainīgie (mēs apspriedām) darbojas gan terminālī, gan Bash skriptā. Uzziniet, kā viņi strādā ar termināli un Bash, izmantojot vienkāršu piemēru:

Piemērs: Izsauciet XYZ lietotājvārdu, viņa atrašanās vietu, kurā viņš pašlaik strādā, un Bash Shell versiju, ko viņš izmanto Bash skriptēšanai.

1. Darbs terminālī

Bash mainīgie

2. Darbs pie Bash Shell

Skatiet tālāk norādīto Bash_Var nosaukto skriptu:

Bash mainīgie

3rdskripta rinda , mēs deklarējām mainīgo USER_NAME lai saglabātu lietotājvārdu XYZ kā tās vērtību.

Pēdējās divās rindās , mēs esam izdrukājuši paredzēto ziņojumu, izmantojot atbalss komandu.

Šajā ziņojumā ir divi mainīgie un viena komanda. Pirms katra no tiem ir dolāra ($) zīme, kur:

    USER_NAMEir lietotāja definēts mainīgais, lai izsauktu lietotājvārdu,BASH_VERSIONir sistēmas definēts mainīgais, ko apvalks sauc par sevi. To izmanto, lai drukātu Bash Shell versiju,PWDkomanda tiek izmantota, lai izdrukātu lietotāja pašreizējo atrašanās vietu.

Lai labāk izprastu, izveidojiet šo skriptu, izpildot norādīto kodu:

 #! /bin/bash #Bash Variables USER_NAME=XYZ echo Hey there! $USER_NAME is any user currently working on the directory $PWD with Bash Shell Version $BASH_VERSION. 

Tas parādīs izvadi, kā redzat šajā attēlā:

Izvade:

Bash mainīgie

Ir vēl daži piemēri mainīgo praktizēšanai gan terminālī, gan Bash Shell. Sekojot līdzi noteikumu kopums (apspriests iepriekš) ir šāda prakse attiecībā uz mainīgajiem lielumiem:

A. Izmantojot komandrindas termināli

1. Mainīgo iestatīšana

Bash mainīgie

2. Mainīgo lielumu lasīšana un atsauces uz tiem

Bash mainīgie

3. Nederīgi mainīgie

Bash mainīgie

4. Divu virkņu mainīgo apvienošana

Bash mainīgie

5. Virkņu savienošana ar mainīgajiem

Bash mainīgie

PIEZĪME. Neizmantojiet vienas pēdiņas, lai apvienotu divus mainīgos, kā arī virkņu savienošanai ar mainīgajiem. Ja virknes savienojat, ievietojot tās atsevišķās pēdiņās, tās neizdosies nolasīt, kā redzams tālāk sniegtajā attēlā:

Bash mainīgie

B. Bash skripta izmantošana:

Tas ir piemērs Apvienojot virknes mainīgos.

Bash mainīgie

Izvade:

Bash mainīgie

Komandrindas argumenti

Komandrindas argumenti tiek izmantoti, lai padarītu skriptu dinamiskāku, nododot ievadi kodam. Mēs nododam šos argumentus skripta izpildes laikā šādā formā:

 ./script_name arg1 arg2 arg3..... 

Starp skripta nosaukumu un visiem pārejas argumentiem nedrīkst būt atstarpes.

Kā lietot komandrindas argumentus?

Bash Shell tie tiek izmantoti ar atsauci uz šādiem noklusējuma parametriem vai īpašajiem mainīgajiem.

    0 $norāda izsaucamā skripta nosaukumu.-saglabā pirmo 9 argumentu nosaukumus vai var tikt izmantots kā argumentu pozīcijas.$#norāda kopējo skriptam nodoto argumentu skaitu (skaitu).$*saglabā visus komandrindas argumentus, savienojot tos kopā.$@saglabā argumentu sarakstu kā masīvu.$?norāda pašreizējā skripta procesa ID.$$norāda pēdējās komandas vai pēdējā izpildes procesa izejas statusu.$!parāda pēdējā fona darba ID.

Tālāk ir norādītas divas metodes, kuras mēs izmantojam komandrindas argumentu nodošanai:

1. metode: pozīcijas numura izmantošana

Tas ir pirmais veids, kā piekļūt argumentiem, izmantojot noklusējuma parametrus (...). Zemāk redzamais attēls to izskaidro:

Bash mainīgie

Izvade:

Bash mainīgie

2. metode: masīva izmantošana.

Tas ir otrais veids, kā nodot argumentus kā masīvu. Lai izmantotu šo metodi, izpildiet norādīto algoritmu.

1. darbība: Izveidojiet Bash skriptu.

2. darbība: Deklarējiet jebkura mainīgā nosaukumu un piešķiriet tā vērtību kā $a šādā formā:

 variable_name=('$@') 

Kur $@ ir noklusējuma arguments, kas tiek izmantots, lai saglabātu argumentus (mēs nododam) kā masīvu.

3. darbība: Parādiet argumentus, definējot to masīva indeksu šādā formā:

 ${variable_name[i]} 

4. darbība: Saglabājiet un aizveriet skriptu.

5. darbība: Izpildiet skriptu, nododot argumentus.

Skatiet šo programmu:

Programma:

 #!/bin/bash args=('$@') echo ${args[0]} ${args[1]} ${args[2]} ${args[3]} 

Bash konsolē:

Bash mainīgie

Izvade:

Bash mainīgie

Komandu aizstāšana

Saskaņā ar Bash oficiālo dokumentāciju

Komandu aizstāšana ļauj komandas izvadei aizstāt pašu komandu. Bash veic paplašināšanu, izpildot komandu apakščaulas vidē un aizstājot komandas aizstāšanu ar komandas standarta izvadi, izdzēšot visas beigu rindiņas. Iegultās jaunās rindiņas netiek dzēstas, taču tās var tikt noņemtas vārdu sadalīšanas laikā.'

Komandu aizstāšana attiecas uz paplašināšanu, ko Bašs veic mūsu vietā. Tas aizņem komandas Bash izvadi, saglabā mainīgo (parasti) un parāda atpakaļ ar atbalsi.

Komandu aizstāšana piedāvā datu elastību attiecībā uz skriptēšanu un mainīgo piešķiršanu. Tas ir vienkārši un viegli, ja ir viena komandrindas izvade. Gadījumā, ja izvade pārsniedz dažas rindas, tad jaunās beigu rindas tiek noņemtas, un viss izvades saturs nonāk vienā rindā.

Skatiet lietošanas sintaksi:

Sintakse

Klasiskā komandu aizstāšanas forma mainīgajā vai komandu aizstāšanā ir atpakaļpēdiņas (`...`), kā norādīts tālāk:

 variable_name=`command_name` variable_name=`command_name [option...] argument1 argument2...` variable_name=`/path/to/command` 

Tagad mēs veicam komandu aizstāšanu, ievietojot komandas iekavās (pirms tam ir dolāra zīme ($)). Paskaties:

 variable_name=$(command_name) variable_name=$(command_name [option...] argument1 argument2...) variable_name=$(path/to/command) 

Tātad, veiksim komandu aizstāšanu ar piemēru, kā norādīts diskusijā.

Šajā piemērā mainīgajā tiek aizstāta viena komanda ls. Skatīt termināli.

Bash mainīgie

1. rindiņa: Bez komandu aizstāšanas izvade tiek paplašināta vairākās rindās.

2. un 3. rindiņa: Ar komandu aizstāšanu izvade tiek pabeigta vienā rindā (ietaupa vietu, noņemot tikko pievienotās rindas).

Tālāk ir sniegts Bash skripts, lai pārbaudītu komandu aizstāšanu.

Programma:

 #! /bin/bash # command substitution lsResult=$(ls) echo 'My files are:' $lsResult 

Skatiet Bash konsoli:

Bash mainīgie

Izvade:

Bash mainīgie