Premenné sú základnou súčasťou programovania, alebo môžeme povedať, že sú duchom programovacieho jazyka. Premenné určujú umiestnenie pamäte pomocou znakov, čísel a alfanumerických znakov. Zvyknú sa na ne odkazovať a manipulovať s nimi v počítačovom programe.
Aké sú premenné?
Premenné sú kontajnery, ktoré uchovávajú údaje alebo užitočnú informáciu ako hodnotu v nich. Nižšie je syntax premennej:
Variable_name =value
Premenná je kombinovaná forma dvoch slov, t. j. premenná + možnosť, čo znamená, že jej hodnotu možno zmeniť a možno ju použiť viackrát.
kontrola nuly java
Premenná je známa ako dočasné úložisko pre akýkoľvek druh údajov, ako je celé číslo, float, char atď. Názov premennej môže zahŕňať abecedy, číslice a podčiarknutie a jeho názov možno začať iba abecedou a podčiarkovníkom.
Poznámka: Nemôžeme definovať názov premennej začínajúci akoukoľvek číslicou.
Čo sú Bashove premenné?
Nemôžeme použiť bash premenné bez správnych informácií ( syntax, dátové typy, typy, prac ), prejdime si tento stručný návod, aby sme mali správny prehľad o premenných Bash.
Najprv musíte poznať syntax.
Syntax:
Variable_name=value
Sada pravidiel na definovanie premenných Bash:
- Pri čítaní alebo tlači premennej uveďte pred názov premennej znak dolára ($).
- Pri nastavovaní premennej s ľubovoľnou hodnotou vynechajte znak dolára ($).
- Názov premennej môže byť alfanumerický alebo môže byť napísaný s podčiarkovníkom (_).
- V názve premennej sa rozlišujú malé a veľké písmená: x a X sa považujú za dve rôzne premenné.
- názov premennej môže byť napísaný buď UPPER_CASE alebo LOWER_CASE písmenami alebo kombináciou oboch, ako chcete.
- Premenná môže byť umiestnená kdekoľvek v Bash skripte alebo na príkazovom riadku, pretože za behu ju Bash nahradí priradenou hodnotou. Bolo to možné vďaka vykonaniu substitúcie pred spustením príkazu.
- Na žiadnej strane znamienka rovnosti (=) medzi názvom premennej a jej hodnotou by nemali byť medzery. Nasleduje niekoľko príkladov Neplatné premenné majú medzi sebou medzery (označené bodkami ...), ako je uvedené nižšie:
var1=...premenná1
var2...=premenná2
var3...=...premenná3 - Na definovanie premennej s hodnotou jedného znaku nie je potrebné používať žiadne úvodzovky, jednoduché alebo dvojité, ako napr var1=premenná . Ak chcete zadať viac slov alebo reťazec ako jednu položku do premennej, použite úvodzovky na uzavretie obsahu do tejto premennej.
- Single Quote ('') pomáha liečiť každú postavu.
- Dvojitá úvodzovka ('') pomáha pri nahrádzaní.
Typy údajov
Vo formálnych programovacích jazykoch musíte definovať typ údajov akejkoľvek premennej v čase deklarácie premennej. Napríklad:
int year=2012 char comp_name='jtp'
Ale v prípade Bash nemusíte definovať dátový typ žiadnej premennej v čase deklarácie premennej. Bash premenné sú netypizované , čo znamená, že stačí zadať názov premennej priradením jej hodnoty a automaticky zohľadní tento typ údajov.
Taký, že ak premennej priradíte akúkoľvek číselnú hodnotu, bude fungovať ako celé číslo a ak premennej priradíte hodnotu znaku, bude to String.
year=2012 comp_name=jtp
pomocou príkazu echo ich prečítate tak, že pred ich meno priradíte znak $, ako napr
echo $rok
echo $name
Typy Bashových premenných
V shelli alebo v akomkoľvek systéme UNIX existujú dva typy premenných.
- Systémom definované premenné
- Používateľom definované premenné
1. Systémom definované premenné: Toto sú preddefinované premenné tak, ako ich vytvára a udržiava samotný operačný systém LINUX. Ich štandardná konvencia je, že vo všeobecnosti sú definované veľkými písmenami, t.j. UPPER_CASE. Takže kedykoľvek uvidíte premennú definovanú veľkými písmenami, s najväčšou pravdepodobnosťou ide o premenné definované systémom.
Toto sú nasledujúce premenné definované systémom, ako je uvedené nižšie:
1. BASH predstavuje názov Shell.
Príklad:
BASH=/usr/bin/bash
2. BASH_VERSION určuje verziu shellu, ktorú má Bash.
Príklad:
BASH_VERSION=4.2.46(2)
3. STĹPCE špecifikovať č. stĺpcov pre našu obrazovku.
Príklad:
COLUMNS=80
4. DOMOV určuje domovský adresár používateľa.
Príklad:
HOME=/home/jatpoint
5. LOGNAME určuje prihlasovacie meno používateľa.
Príklad:
LOGNAME=javatpoint
6. OSTYPE informuje o type OS.
Príklad:
OSTYPE=linux-gnu
7. OZP predstavuje aktuálny pracovný adresár.
Príklad:
PWD=/home/javatpoint
8. POUŽÍVATEĽSKÉ MENO určuje meno aktuálne prihláseného užívateľa.
Príklad:
USERNAME=javatpoint
Ak chcete poznať zoznam týchto premenných vo vašom systéme, zadajte príkazy set, env , a printenv na termináli príkazového riadka takto:
1. Zadaním nastaviť príkaz.
Výkon:
2. Zadaním env príkaz
Výkon:
3. Zadaním príkazu printenv
Výkon:
Nazvime tieto premenné prostredníctvom Bash Shell. Nasledujú uvedené kroky:
Krok 1: Vytvorte skript s názvom Bash_sdvar a do konzoly Bash zadajte nasledujúci kód:
#! /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
Krok 2. Pozrite sa na nižšie uvedenú konzolu Bash:
Krok 3. Uložte a spustite skript. Zobrazí výstup, ako môžete vidieť na obrázku nižšie.
Výkon:
2. Používateľom definované premenné: Tieto premenné vytvára a udržiava používateľ. Vo všeobecnosti sú tieto typy premenných definované v LOWER_CASES. Neexistuje žiadne prísne pravidlo písať tieto premenné malými písmenami. Môžeme ich písať aj veľkými písmenami.
Vytvorme Bash Script na definovanie týchto premenných. Postupujte podľa krokov uvedených nižšie:
Krok 1. Vytvorte skript s názvom podľa bash_yard a zadajte nasledujúci kód na konzole Bash:
#! /bin/bash # User-Defined Variables name=Peter ROLL_NO=5245325 echo 'The student name is $name and his Roll number is $ROLL_NO.'
Krok 2. Pozrite si kód na konzole Bash.
Krok 3. Uložte a spustite skript.
Výkon:
Fungovanie Bashových premenných
Po základnej demonštrácii premenných poďme vedieť, ako fungujú?
Existujú dve akcie, ktoré zvyčajne vykonávame pre premennú v Bash, ako je uvedené nižšie:
- nastavenie hodnoty pre premennú
- čítanie hodnoty pre to.
Hodnotu premennej je možné nastaviť rôznymi spôsobmi, pričom najbežnejším spôsobom je priame nastavenie hodnoty. Na čítanie premennej môžeme umiestniť jej názov (predponu so znakom $) kdekoľvek v skripte.
Bash najprv skontroluje všetky názvy premenných, ako keby boli prítomné v skripte. Potom interpretuje každý riadok nášho skriptu. Po identifikácii každej premennej nahradí názov premennej priradenou hodnotou. Koniec koncov, interpretuje/spúšťa tento riadok kódu a pokračuje v tomto procese pre každý kódovaný riadok nášho skriptu.
POZNÁMKA: Oba druhy premenných v Bash (diskutovali sme) fungujú na termináli aj na Bash skripte. Pozrime sa na ich prácu na termináli a Bash prostredníctvom jednoduchého príkladu:
Príklad: Zavolajte meno používateľa podľa XYZ, jeho umiestnenie, na ktorom momentálne pracuje, a verziu Bash Shell, ktorú používa na Bash Scripting.
1. Práca na termináli
2. Práca na Bash Shell
Pozrite si skript pomenovaný Bash_Var uvedený nižšie:
V 3rdriadok skriptu , deklarovali sme premennú USER_NAME na uloženie používateľského mena XYZ ako jeho hodnotu.
V posledných dvoch riadkoch , vytlačili sme zamýšľanú správu pomocou ozvena príkaz.
V tejto správe sú dve premenné a jeden príkaz. Pred každým z nich je znak dolára ($), kde:
Pre lepšie pochopenie vytvorte tento skript podľa zadaného kódu:
#! /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.
Zobrazí výstup, ako môžete vidieť na nasledujúcom obrázku:
Výkon:
Existuje niekoľko ďalších príkladov na precvičovanie premenných na termináli aj Bash Shell. Nasledovaním súbor pravidiel (diskutované predtým) majte prax s premennými takto:
A. Používanie terminálu príkazového riadka
1. Nastavenie premenných
2. Čítanie a odkazovanie na premenné
3. Neplatné premenné
4. Spojenie dvoch reťazcových premenných
5. Reťazenie reťazcov s premennými
POZNÁMKA: Nepoužívajte jednoduché úvodzovky na kombinovanie dvoch premenných a tiež na zreťazenie reťazcov s premennými. Tak, že ak zreťazíte reťazce tak, že ich uzatvoríte do jednoduchých úvodzoviek, nebude sa vám ich čítať, ako môžete vidieť na obrázku nižšie:
B. Používanie skriptu Bash:
Je to príklad kombinovanie premenných typu String.
Výkon:
Argumenty príkazového riadku
Argumenty príkazového riadku sa používajú na zvýšenie dynamiky skriptu odovzdaním vstupu do kódu. Tieto argumenty odovzdávame za behu skriptu v nasledujúcom tvare:
./script_name arg1 arg2 arg3.....
Medzi názvom skriptu a všetkými prechádzajúcimi argumentmi by nemala byť žiadna medzera.
Ako používať argumenty príkazového riadku?
V Bash Shell sa používajú s odkazom na nasledujúce predvolené parametre alebo špeciálne premenné.
Nasledujú dve metódy, ktoré používame na odovzdávanie argumentov príkazového riadka:
Metóda 1: Použitie čísla pozície
Je to prvý spôsob prístupu k argumentom pomocou predvolených parametrov (...). Nižšie uvedený obrázok to vysvetľuje:
Výkon:
Metóda 2: Použitie poľa.
Je to druhý spôsob odovzdávania argumentov ako pole. Ak chcete použiť túto metódu, postupujte podľa daného algoritmu.
Krok 1: Vytvorte Bash skript.
Krok 2: Deklarujte ľubovoľný názov premennej a priraďte jej hodnotu ako $a v nasledujúcej forme:
variable_name=('$@')
Kde $@ je predvolený argument, ktorý sa používa na ukladanie argumentov (odovzdávame) ako pole.
Krok 3: Zobrazte argumenty definovaním ich indexu poľa v nasledujúcom tvare:
${variable_name[i]}
Krok 4: Uložte a zatvorte skript.
Krok 5: Spustite skript odovzdaním argumentov.
Pozrite si nasledujúci program:
Program:
#!/bin/bash args=('$@') echo ${args[0]} ${args[1]} ${args[2]} ${args[3]}
Na konzole Bash:
Výkon:
Náhrada príkazov
Podľa oficiálnej dokumentácie Bash
'Nahradenie príkazu umožňuje výstup príkazu nahradiť samotný príkaz. Bash vykoná expanziu vykonaním príkazu v prostredí subshell a nahradením príkazu nahradením štandardným výstupom príkazu, pričom všetky koncové nové riadky sa odstránia. Vložené nové riadky sa neodstránia, ale môžu sa odstrániť počas delenia slov.“
Náhrada príkazov sa týka rozšírenia, ktoré pre nás vykonáva Bash. Prevezme výstup príkazu Bash, uloží ho do premennej (všeobecne) a zobrazí ho späť s ozvenou.
Náhrada príkazov ponúka flexibilitu údajov, pokiaľ ide o skriptovanie a priraďovanie premenných. Je to jednoduché a ľahké pre výstup z jedného príkazového riadku. V prípade, že výstup prechádza cez niekoľko riadkov, potom sa nové koncové riadky odstránia a celý obsah výstupu skončí na jednom riadku.
Pozrite si syntax na použitie:
Syntax
Klasická forma nahrádzania príkazov v premennej alebo substitúcie príkazov je pomocou spätných úvodzoviek (`...`), ako je uvedené nižšie:
variable_name=`command_name` variable_name=`command_name [option...] argument1 argument2...` variable_name=`/path/to/command`
Teraz vykonáme nahradenie príkazov tak, že príkazy uzatvoríme do hranatých zátvoriek (pred ktorými je znak dolára ($)). Pozrieť sa:
variable_name=$(command_name) variable_name=$(command_name [option...] argument1 argument2...) variable_name=$(path/to/command)
Takže urobme substitúciu príkazov s príkladom podľa diskusie.
V tomto príklade nahrádzame jeden príkaz ls v premennej. Pozrite si terminál.
Riadok 1: Bez nahradenia príkazov sa výstup rozšíri do viacerých riadkov.
Riadok 2 a 3: Pri substitúcii príkazov sa výstup ukončí na jednom riadku (ušetrilo sa miesto odstránením nových riadkov v ťahu).
Nasleduje Bash Script na testovanie náhrady príkazov.
Program:
#! /bin/bash # command substitution lsResult=$(ls) echo 'My files are:' $lsResult
Pozrite si konzolu Bash:
Výkon: