Shell on käyttöjärjestelmän käyttöliittymä. Se hyväksyy käyttäjien komennot ja tulkitsee ne käyttöjärjestelmälle. Jos haluat suorittaa joukon komentoja yhdessä, voit tehdä sen luomalla komentotulkkikomentosarjan. Shell-skriptit ovat erittäin hyödyllisiä, jos sinun on suoritettava jokin tehtävä rutiininomaisesti, kuten varmuuskopiointi. Voit luetella nämä komennot ja suorittaa ne kaikki yhdellä skriptillä. Katsotaanpa, kuinka voit luoda shell-skriptin ja suorittaa sen Linuxissa.
Shell-skriptin luominen
Kirjaudu Linux-koneellesi ja avaa pääte, siirry kansioon, johon haluat tallentaa komentosarjan. Shell-skriptit päättyvät tunnisteella .sh. Luodaan ensimmäinen shell-skriptimme. Kirjoita
touch script.sh>
Nyt tämä komentosarjatiedosto ei ole oletusarvoisesti suoritettavissa, meidän on annettava suoritettavat oikeudet tälle tiedostolle. Kirjoita
chmod +x script.sh>
Nyt lisäämme joitain komentoja tähän komentosarjaan. Avaa tämä komentosarja millä tahansa valitsemallasi tekstieditorilla (komentorivipohjainen tai GUI-pohjainen) ja lisää komentoja. Käytämme nanoa. Kirjoita
nano script.sh>
Lisää seuraavat komennot testataksesi tätä komentosarjaa
echo This is my first shell script touch testfile ls echo End of my shell script>
Tallenna muutokset ja suorita komentosarja kirjoittamalla
./script.sh>

Kuvakaappaus yllä olevista vaiheista
Näet, se suoritti kaikki määritetyt komennot.
Kommentit shell-skriptissä
Mitä tahansa riviä, joka alkaa #-merkillä komentotulkkikomentosarjassa, käsitellään kommentina ja komentotulkki jättää ne huomiotta suorituksen aikana, paitsi shebang-rivi, jonka näemme myöhemmin tässä artikkelissa. Katsotaanpa esimerkkiä. Shell-skripti luodaan seuraavalla sisällöllä.
# This is a comment echo Testing comments in shell script>

Kommentit Shell Scriptissa
java kuinka muuntaa merkkijono int
Huomaat, että kommentti jätetään huomiotta.
Muuttujat Shell Scriptissa
Kyllä, Shell-skriptit tukevat muuttujien käyttöä, eikä meidän tarvitse määrittää muuttujan tyyppiä sen määrittelyn aikana. Muuttujia on kahdenlaisia:
- Järjestelmän määrittämät muuttujat
- Käyttäjän määrittämät muuttujat.
Järjestelmän määrittämät muuttujat, joita kutsutaan myös ympäristömuuttujiksi, kirjoitetaan yleensä isoilla kirjaimilla. Voit tarkastella kaikkia nykyisiä ympäristömuuttujia printenv-komennolla. Käyttäjä määrittää käyttäjän määrittämät muuttujat, ja ne ovat olemassa vain komentosarjan suorittamisen aikana. Voit määrittää muuttujan kirjoittamalla sen nimen ja antamalla arvon =-merkillä ja pääset käsiksi muuttujaan lisäämällä $ ennen muuttujan nimeä. Muuttujat esitetään seuraavassa esimerkkiskriptissä.
rohit shetty näyttelijä
# Accessing an Environment Variable echo $USER # Creating and accessing User defined Variable variable_name='Geeksforgeeks' echo $variable_name>

Muuttujat Shell Scriptissa
Shell Script -tulkin määrittäminen
Linuxissa on saatavilla monia Shellejä, kuten The bourne shell(sh), The Korn Shell(ksh) ja GNU Bourne-Again Shell(bash). Shellille kirjoitettuja skriptejä kutsutaan shell-skripteiksi, ja ne voidaan tulkita sekä ksh- että bash-kuorilla. ksh ja Bash ovat parannettuja versioita alkuperäisestä sh-kuoresta ja niissä on enemmän ominaisuuksia kuin sh. Bash on yleensä oletuskuori useimmissa Linux-jakeluissa, ja erityisesti bash-shellille kirjoitettuja komentosarjoja kutsutaan bash-skripteiksi.
Voit määrittää, mitä komentosarjaa komentosarja käyttää, vaikka komentosarja suoritettaisiin toisesta komentotulkkipäätteestä. Voit tehdä tämän lisäämällä #! komentosarjatiedoston päällä, jota seuraa valitun kuoren absoluuttinen polku. Jos haluat määrittää bashin tulkiksi, lisää seuraava rivi komentosarjan päälle.
#!/bin/bash>
Tätä linjaa kutsutaan shebang-linjaksi.
Huomautus: Tämä toimii vain, jos järjestelmääsi on asennettu bash.
Vertailuoperaattorit
Voit verrata kahta muuttujaa komentotulkkikomentosarjassa. Teemme näitä vertailuja tehdäksemme päätöksiä, näemme kuinka se tehdään myöhemmin tässä artikkelissa, mutta ennen sitä tässä on luettelo joistakin vertailuoperaattoreista.
Kokonaislukuvertailu
| Operaattori | Kuvaus |
| -ekv | on yhtä suuri kuin |
| - On | ei ole yhtä suuri kuin |
| -gt | on suurempi kuin |
| -ge | on suurempi tai yhtä suuri kuin |
| -lt | on vähemmän kuin |
| - | on pienempi tai yhtä suuri kuin |
Merkkijonojen vertailu
| Operaattori | Kuvaus |
| == | on yhtä suuri kuin |
| != | ei ole yhtä suuri kuin |
| < | on pienempi kuin ASCII-aakkosjärjestyksessä |
| > | on suurempi kuin ASCII-aakkosjärjestyksessä |
Lisäämme ennen, koska ne on pakotettava, kun ne kirjoitetaan [ ]-konstruktioon. Katsotaan nyt, missä näitä käytetään.
Ehdolliset lausunnot
Ehdollisia lauseita käytetään koodilohkon suorittamiseen vain, kun tietyt ehdot täyttyvät. Shell-skriptit tukevat ehdollisten lausekkeiden käyttöä. Käytämme vertailuoperaattoreita olosuhteiden tarkistamiseen. Katsotaanpa muutama ehdollinen lausunto.
perinnöllinen java
Jos lausunto
Se tarkistaa ehdon, ja jos se on ehdollinen tosi, se suorittaa komennot.
Syntaksi
if [ condition ] then #statements fi>
Katsotaanpa esimerkkiä.
#!/bin/sh x=10 y=11 if [ $x -ne $y ] then echo 'Not equal' fi>

.if lause
Jos-muu lausunto
If-else-käskyssä voit määrittää joukon komentoja, jotka suoritetaan, jos ehto ei täyty.
Syntaksi
if [ condition ] then #set of statements if the condition is true else #set of statements if the condition is false fi>
Katsotaanpa esimerkkiä
#!/Syntaxbin/sh x=10 y=10 if [ $x -ne $y ] then echo 'Not equal' else echo 'They are equal' fi>

.if-else lauseke
On muitakin ehdollisia lausuntoja, voit lukea niistä tässä .
Huomautus: Kirjoita välilyönti [ ja ennen ] jälkeen samalla kun määrität tarkistettavan ehdon, muuten saat virheilmoituksen.
Silmukat
Silmukoiden avulla voit tehdä joukon komentoja uudestaan ja uudestaan, kunnes tietty ehto täyttyy. Katsotaanpa joitain silmukoita.
Vaikka silmukka
Se alkaa suorittaa määritettyjä komentoja, jos ehto on tosi, ja toistaa niitä, kunnes ehto on epätosi.
Syntaksi
while [ condition ] do #set of statements done>
Katsotaanpa esimerkkiä.
#!/bin/sh x=2 while [ $x -lt 6 ] do echo $x x=`expr $x + 1` done>

Vaikka silmukka
Sisällytämme lausekkeen ``:n sisään, kun asetamme sen muuttujaan. Voit lukea expr-komennosta täältä.
Silmukalle
For-silmukassa muuttuja toistuu arvoluettelon yli ja päättyy, kun iteroitavia arvoja ei ole enää.
komento node js:ssä
Syntaksi
for var in val1 val2 val3 do #statements done>
Katsotaanpa esimerkkiä.
#!/bin/sh for var in 2 4 5 8 do echo $var done>

silmukalle
Voit lukea silmukoista yksityiskohtaisesti tässä .
Positiaaliset argumentit
Paikkaargumentit ovat argumentteja tai arvoja, jotka välitämme komentosarjan komentosarjalle suoritettaessa komentosarjaa. Niihin päästään muuttujilla Shell on käyttöjärjestelmän käyttöliittymä. Se hyväksyy käyttäjien komennot ja tulkitsee ne käyttöjärjestelmälle. Jos haluat suorittaa joukon komentoja yhdessä, voit tehdä sen luomalla komentotulkkikomentosarjan. Shell-skriptit ovat erittäin hyödyllisiä, jos sinun on suoritettava jokin tehtävä rutiininomaisesti, kuten varmuuskopiointi. Voit luetella nämä komennot ja suorittaa ne kaikki yhdellä skriptillä. Katsotaanpa, kuinka voit luoda shell-skriptin ja suorittaa sen Linuxissa.
Shell-skriptin luominen
Kirjaudu Linux-koneellesi ja avaa pääte, siirry kansioon, johon haluat tallentaa komentosarjan. Shell-skriptit päättyvät tunnisteella .sh. Luodaan ensimmäinen shell-skriptimme. Kirjoita
touch script.sh>
Nyt tämä komentosarjatiedosto ei ole oletusarvoisesti suoritettavissa, meidän on annettava suoritettavat oikeudet tälle tiedostolle. Kirjoita
chmod +x script.sh>
Nyt lisäämme joitain komentoja tähän komentosarjaan. Avaa tämä komentosarja millä tahansa valitsemallasi tekstieditorilla (komentorivipohjainen tai GUI-pohjainen) ja lisää komentoja. Käytämme nanoa. Kirjoita
nano script.sh>
Lisää seuraavat komennot testataksesi tätä komentosarjaa
echo This is my first shell script touch testfile ls echo End of my shell script>
Tallenna muutokset ja suorita komentosarja kirjoittamalla
./script.sh>

Kuvakaappaus yllä olevista vaiheista
Näet, se suoritti kaikki määritetyt komennot.
Kommentit shell-skriptissä
Mitä tahansa riviä, joka alkaa #-merkillä komentotulkkikomentosarjassa, käsitellään kommentina ja komentotulkki jättää ne huomiotta suorituksen aikana, paitsi shebang-rivi, jonka näemme myöhemmin tässä artikkelissa. Katsotaanpa esimerkkiä. Shell-skripti luodaan seuraavalla sisällöllä.
# This is a comment echo Testing comments in shell script>

Kommentit Shell Scriptissa
Huomaat, että kommentti jätetään huomiotta.
Muuttujat Shell Scriptissa
Kyllä, Shell-skriptit tukevat muuttujien käyttöä, eikä meidän tarvitse määrittää muuttujan tyyppiä sen määrittelyn aikana. Muuttujia on kahdenlaisia:
- Järjestelmän määrittämät muuttujat
- Käyttäjän määrittämät muuttujat.
Järjestelmän määrittämät muuttujat, joita kutsutaan myös ympäristömuuttujiksi, kirjoitetaan yleensä isoilla kirjaimilla. Voit tarkastella kaikkia nykyisiä ympäristömuuttujia printenv-komennolla. Käyttäjä määrittää käyttäjän määrittämät muuttujat, ja ne ovat olemassa vain komentosarjan suorittamisen aikana. Voit määrittää muuttujan kirjoittamalla sen nimen ja antamalla arvon =-merkillä ja pääset käsiksi muuttujaan lisäämällä $ ennen muuttujan nimeä. Muuttujat esitetään seuraavassa esimerkkiskriptissä.
# Accessing an Environment Variable echo $USER # Creating and accessing User defined Variable variable_name='Geeksforgeeks' echo $variable_name>

Muuttujat Shell Scriptissa
Shell Script -tulkin määrittäminen
Linuxissa on saatavilla monia Shellejä, kuten The bourne shell(sh), The Korn Shell(ksh) ja GNU Bourne-Again Shell(bash). Shellille kirjoitettuja skriptejä kutsutaan shell-skripteiksi, ja ne voidaan tulkita sekä ksh- että bash-kuorilla. ksh ja Bash ovat parannettuja versioita alkuperäisestä sh-kuoresta ja niissä on enemmän ominaisuuksia kuin sh. Bash on yleensä oletuskuori useimmissa Linux-jakeluissa, ja erityisesti bash-shellille kirjoitettuja komentosarjoja kutsutaan bash-skripteiksi.
Voit määrittää, mitä komentosarjaa komentosarja käyttää, vaikka komentosarja suoritettaisiin toisesta komentotulkkipäätteestä. Voit tehdä tämän lisäämällä #! komentosarjatiedoston päällä, jota seuraa valitun kuoren absoluuttinen polku. Jos haluat määrittää bashin tulkiksi, lisää seuraava rivi komentosarjan päälle.
#!/bin/bash>
Tätä linjaa kutsutaan shebang-linjaksi.
Huomautus: Tämä toimii vain, jos järjestelmääsi on asennettu bash.
Vertailuoperaattorit
Voit verrata kahta muuttujaa komentotulkkikomentosarjassa. Teemme näitä vertailuja tehdäksemme päätöksiä, näemme kuinka se tehdään myöhemmin tässä artikkelissa, mutta ennen sitä tässä on luettelo joistakin vertailuoperaattoreista.
Kokonaislukuvertailu
| Operaattori | Kuvaus |
| -ekv | on yhtä suuri kuin |
| - On | ei ole yhtä suuri kuin |
| -gt | on suurempi kuin |
| -ge | on suurempi tai yhtä suuri kuin |
| -lt | on vähemmän kuin |
| - | on pienempi tai yhtä suuri kuin |
Merkkijonojen vertailu
| Operaattori | Kuvaus |
| == | on yhtä suuri kuin |
| != | ei ole yhtä suuri kuin |
| < | on pienempi kuin ASCII-aakkosjärjestyksessä |
| > | on suurempi kuin ASCII-aakkosjärjestyksessä |
Lisäämme ennen, koska ne on pakotettava, kun ne kirjoitetaan [ ]-konstruktioon. Katsotaan nyt, missä näitä käytetään.
Ehdolliset lausunnot
Ehdollisia lauseita käytetään koodilohkon suorittamiseen vain, kun tietyt ehdot täyttyvät. Shell-skriptit tukevat ehdollisten lausekkeiden käyttöä. Käytämme vertailuoperaattoreita olosuhteiden tarkistamiseen. Katsotaanpa muutama ehdollinen lausunto.
Jos lausunto
Se tarkistaa ehdon, ja jos se on ehdollinen tosi, se suorittaa komennot.
Syntaksi
if [ condition ] then #statements fi>
Katsotaanpa esimerkkiä.
#!/bin/sh x=10 y=11 if [ $x -ne $y ] then echo 'Not equal' fi>

.if lause
Jos-muu lausunto
If-else-käskyssä voit määrittää joukon komentoja, jotka suoritetaan, jos ehto ei täyty.
Syntaksi
if [ condition ] then #set of statements if the condition is true else #set of statements if the condition is false fi>
Katsotaanpa esimerkkiä
#!/Syntaxbin/sh x=10 y=10 if [ $x -ne $y ] then echo 'Not equal' else echo 'They are equal' fi>

.if-else lauseke
On muitakin ehdollisia lausuntoja, voit lukea niistä tässä .
Huomautus: Kirjoita välilyönti [ ja ennen ] jälkeen samalla kun määrität tarkistettavan ehdon, muuten saat virheilmoituksen.
Silmukat
Silmukoiden avulla voit tehdä joukon komentoja uudestaan ja uudestaan, kunnes tietty ehto täyttyy. Katsotaanpa joitain silmukoita.
Vaikka silmukka
Se alkaa suorittaa määritettyjä komentoja, jos ehto on tosi, ja toistaa niitä, kunnes ehto on epätosi.
Syntaksi
while [ condition ] do #set of statements done>
Katsotaanpa esimerkkiä.
#!/bin/sh x=2 while [ $x -lt 6 ] do echo $x x=`expr $x + 1` done>

Vaikka silmukka
Sisällytämme lausekkeen ``:n sisään, kun asetamme sen muuttujaan. Voit lukea expr-komennosta täältä.
Silmukalle
For-silmukassa muuttuja toistuu arvoluettelon yli ja päättyy, kun iteroitavia arvoja ei ole enää.
Syntaksi
for var in val1 val2 val3 do #statements done>
Katsotaanpa esimerkkiä.
#!/bin/sh for var in 2 4 5 8 do echo $var done>

silmukalle
Voit lukea silmukoista yksityiskohtaisesti tässä .
Positiaaliset argumentit
Paikkaargumentit ovat argumentteja tai arvoja, jotka välitämme komentosarjan komentosarjalle suoritettaessa komentosarjaa. Niihin päästään muuttujilla $0, $1, $2 … $9. Tämän lisäksi niihin viittaavat ${10}, ${11} ja niin edelleen. $# tallentaa hyväksyttyjen argumenttien lukumäärän ja $0 tallentaa komentosarjan nimen. Katsotaanpa esimerkkiä tämän kaiken ymmärtämiseksi.
#!/bin/sh echo 'No of arguments is $#' echo 'Name of the script is $0' echo 'First argument is $1' echo 'Second argument is $2'>
Voit välittää argumentit kirjoittamalla ne terminaaliin komentosarjan nimen jälkeen alla olevan kuvan mukaisesti.

Positiaaliset argumentit
Komentojen tulosteen tallentaminen
Voit tallentaa komentojen tulosteet muuttujan sisään shell-skriptissä. Voit tehdä sen kahdella tavalla.
Syntaksi
#Syntax 1 var=$(a valid linux command) #Syntax 2 var2=`a valid linux command`>
Katsotaanpa esimerkkiä.
#!/bin/sh b=$(pwd) c=`pwd` echo $b echo $c d=$(ls /bin | grep bash) echo $d>

Komentojen tulosteen tallentaminen
Poistu komentotulkkikomentojen koodit
Aina kun komento päättyy ja palauttaa ohjauksen pääprosessille, se palauttaa poistumiskoodit välillä 0 - 255. Poistumiskoodi 0 tarkoittaa, että komento onnistui, ja mikä tahansa muu poistumiskoodi tarkoittaa, että komento epäonnistui. Voit tarkastella poistumiskoodia minkä tahansa komennon suorittamisen jälkeen käyttämällä $? muuttuja. Katso alla oleva esimerkki.

shell-komennon poistumiskoodi
Voit määrittää komentotulkkikomentosarjallesi poistumiskoodin manuaalisesti. Tätä voidaan käyttää ehdollisten lauseiden kanssa ilmaisemaan, saavutettiinko käsikirjoituksen tarkoitus vai ei.
Esimerkki
#!/bin/sh read x if [ $x -ne 10 ] then echo failed exit 1 else echo passed exit 0 fi>

shell-komennon poistumiskoodi
, , … . Tämän lisäksi niihin viittaavat , ja niin edelleen. $# tallentaa hyväksyttyjen argumenttien lukumäärän ja
Shell on käyttöjärjestelmän käyttöliittymä. Se hyväksyy käyttäjien komennot ja tulkitsee ne käyttöjärjestelmälle. Jos haluat suorittaa joukon komentoja yhdessä, voit tehdä sen luomalla komentotulkkikomentosarjan. Shell-skriptit ovat erittäin hyödyllisiä, jos sinun on suoritettava jokin tehtävä rutiininomaisesti, kuten varmuuskopiointi. Voit luetella nämä komennot ja suorittaa ne kaikki yhdellä skriptillä. Katsotaanpa, kuinka voit luoda shell-skriptin ja suorittaa sen Linuxissa.
Shell-skriptin luominen
Kirjaudu Linux-koneellesi ja avaa pääte, siirry kansioon, johon haluat tallentaa komentosarjan. Shell-skriptit päättyvät tunnisteella .sh. Luodaan ensimmäinen shell-skriptimme. Kirjoita
touch script.sh>
Nyt tämä komentosarjatiedosto ei ole oletusarvoisesti suoritettavissa, meidän on annettava suoritettavat oikeudet tälle tiedostolle. Kirjoita
chmod +x script.sh>
Nyt lisäämme joitain komentoja tähän komentosarjaan. Avaa tämä komentosarja millä tahansa valitsemallasi tekstieditorilla (komentorivipohjainen tai GUI-pohjainen) ja lisää komentoja. Käytämme nanoa. Kirjoita
nano script.sh>
Lisää seuraavat komennot testataksesi tätä komentosarjaa
echo This is my first shell script touch testfile ls echo End of my shell script>
Tallenna muutokset ja suorita komentosarja kirjoittamalla
./script.sh>

Kuvakaappaus yllä olevista vaiheista
Näet, se suoritti kaikki määritetyt komennot.
Kommentit shell-skriptissä
Mitä tahansa riviä, joka alkaa #-merkillä komentotulkkikomentosarjassa, käsitellään kommentina ja komentotulkki jättää ne huomiotta suorituksen aikana, paitsi shebang-rivi, jonka näemme myöhemmin tässä artikkelissa. Katsotaanpa esimerkkiä. Shell-skripti luodaan seuraavalla sisällöllä.
# This is a comment echo Testing comments in shell script>

Kommentit Shell Scriptissa
Huomaat, että kommentti jätetään huomiotta.
Muuttujat Shell Scriptissa
Kyllä, Shell-skriptit tukevat muuttujien käyttöä, eikä meidän tarvitse määrittää muuttujan tyyppiä sen määrittelyn aikana. Muuttujia on kahdenlaisia:
- Järjestelmän määrittämät muuttujat
- Käyttäjän määrittämät muuttujat.
Järjestelmän määrittämät muuttujat, joita kutsutaan myös ympäristömuuttujiksi, kirjoitetaan yleensä isoilla kirjaimilla. Voit tarkastella kaikkia nykyisiä ympäristömuuttujia printenv-komennolla. Käyttäjä määrittää käyttäjän määrittämät muuttujat, ja ne ovat olemassa vain komentosarjan suorittamisen aikana. Voit määrittää muuttujan kirjoittamalla sen nimen ja antamalla arvon =-merkillä ja pääset käsiksi muuttujaan lisäämällä $ ennen muuttujan nimeä. Muuttujat esitetään seuraavassa esimerkkiskriptissä.
# Accessing an Environment Variable echo $USER # Creating and accessing User defined Variable variable_name='Geeksforgeeks' echo $variable_name>

Muuttujat Shell Scriptissa
Shell Script -tulkin määrittäminen
Linuxissa on saatavilla monia Shellejä, kuten The bourne shell(sh), The Korn Shell(ksh) ja GNU Bourne-Again Shell(bash). Shellille kirjoitettuja skriptejä kutsutaan shell-skripteiksi, ja ne voidaan tulkita sekä ksh- että bash-kuorilla. ksh ja Bash ovat parannettuja versioita alkuperäisestä sh-kuoresta ja niissä on enemmän ominaisuuksia kuin sh. Bash on yleensä oletuskuori useimmissa Linux-jakeluissa, ja erityisesti bash-shellille kirjoitettuja komentosarjoja kutsutaan bash-skripteiksi.
Voit määrittää, mitä komentosarjaa komentosarja käyttää, vaikka komentosarja suoritettaisiin toisesta komentotulkkipäätteestä. Voit tehdä tämän lisäämällä #! komentosarjatiedoston päällä, jota seuraa valitun kuoren absoluuttinen polku. Jos haluat määrittää bashin tulkiksi, lisää seuraava rivi komentosarjan päälle.
#!/bin/bash>
Tätä linjaa kutsutaan shebang-linjaksi.
Huomautus: Tämä toimii vain, jos järjestelmääsi on asennettu bash.
Vertailuoperaattorit
Voit verrata kahta muuttujaa komentotulkkikomentosarjassa. Teemme näitä vertailuja tehdäksemme päätöksiä, näemme kuinka se tehdään myöhemmin tässä artikkelissa, mutta ennen sitä tässä on luettelo joistakin vertailuoperaattoreista.
Kokonaislukuvertailu
| Operaattori | Kuvaus |
| -ekv | on yhtä suuri kuin |
| - On | ei ole yhtä suuri kuin |
| -gt | on suurempi kuin |
| -ge | on suurempi tai yhtä suuri kuin |
| -lt | on vähemmän kuin |
| - | on pienempi tai yhtä suuri kuin |
Merkkijonojen vertailu
| Operaattori | Kuvaus |
| == | on yhtä suuri kuin |
| != | ei ole yhtä suuri kuin |
| < | on pienempi kuin ASCII-aakkosjärjestyksessä |
| > | on suurempi kuin ASCII-aakkosjärjestyksessä |
Lisäämme ennen, koska ne on pakotettava, kun ne kirjoitetaan [ ]-konstruktioon. Katsotaan nyt, missä näitä käytetään.
Ehdolliset lausunnot
Ehdollisia lauseita käytetään koodilohkon suorittamiseen vain, kun tietyt ehdot täyttyvät. Shell-skriptit tukevat ehdollisten lausekkeiden käyttöä. Käytämme vertailuoperaattoreita olosuhteiden tarkistamiseen. Katsotaanpa muutama ehdollinen lausunto.
Jos lausunto
Se tarkistaa ehdon, ja jos se on ehdollinen tosi, se suorittaa komennot.
Syntaksi
if [ condition ] then #statements fi>
Katsotaanpa esimerkkiä.
#!/bin/sh x=10 y=11 if [ $x -ne $y ] then echo 'Not equal' fi>

.if lause
Jos-muu lausunto
If-else-käskyssä voit määrittää joukon komentoja, jotka suoritetaan, jos ehto ei täyty.
Syntaksi
if [ condition ] then #set of statements if the condition is true else #set of statements if the condition is false fi>
Katsotaanpa esimerkkiä
#!/Syntaxbin/sh x=10 y=10 if [ $x -ne $y ] then echo 'Not equal' else echo 'They are equal' fi>

.if-else lauseke
On muitakin ehdollisia lausuntoja, voit lukea niistä tässä .
Huomautus: Kirjoita välilyönti [ ja ennen ] jälkeen samalla kun määrität tarkistettavan ehdon, muuten saat virheilmoituksen.
Silmukat
Silmukoiden avulla voit tehdä joukon komentoja uudestaan ja uudestaan, kunnes tietty ehto täyttyy. Katsotaanpa joitain silmukoita.
Vaikka silmukka
Se alkaa suorittaa määritettyjä komentoja, jos ehto on tosi, ja toistaa niitä, kunnes ehto on epätosi.
Syntaksi
while [ condition ] do #set of statements done>
Katsotaanpa esimerkkiä.
#!/bin/sh x=2 while [ $x -lt 6 ] do echo $x x=`expr $x + 1` done>

Vaikka silmukka
Sisällytämme lausekkeen ``:n sisään, kun asetamme sen muuttujaan. Voit lukea expr-komennosta täältä.
Silmukalle
For-silmukassa muuttuja toistuu arvoluettelon yli ja päättyy, kun iteroitavia arvoja ei ole enää.
Syntaksi
for var in val1 val2 val3 do #statements done>
Katsotaanpa esimerkkiä.
#!/bin/sh for var in 2 4 5 8 do echo $var done>

silmukalle
Voit lukea silmukoista yksityiskohtaisesti tässä .
Positiaaliset argumentit
Paikkaargumentit ovat argumentteja tai arvoja, jotka välitämme komentosarjan komentosarjalle suoritettaessa komentosarjaa. Niihin päästään muuttujilla $0, $1, $2 … $9. Tämän lisäksi niihin viittaavat ${10}, ${11} ja niin edelleen. $# tallentaa hyväksyttyjen argumenttien lukumäärän ja $0 tallentaa komentosarjan nimen. Katsotaanpa esimerkkiä tämän kaiken ymmärtämiseksi.
#!/bin/sh echo 'No of arguments is $#' echo 'Name of the script is $0' echo 'First argument is $1' echo 'Second argument is $2'>
Voit välittää argumentit kirjoittamalla ne terminaaliin komentosarjan nimen jälkeen alla olevan kuvan mukaisesti.

Positiaaliset argumentit
Komentojen tulosteen tallentaminen
Voit tallentaa komentojen tulosteet muuttujan sisään shell-skriptissä. Voit tehdä sen kahdella tavalla.
Syntaksi
#Syntax 1 var=$(a valid linux command) #Syntax 2 var2=`a valid linux command`>
Katsotaanpa esimerkkiä.
#!/bin/sh b=$(pwd) c=`pwd` echo $b echo $c d=$(ls /bin | grep bash) echo $d>

Komentojen tulosteen tallentaminen
Poistu komentotulkkikomentojen koodit
Aina kun komento päättyy ja palauttaa ohjauksen pääprosessille, se palauttaa poistumiskoodit välillä 0 - 255. Poistumiskoodi 0 tarkoittaa, että komento onnistui, ja mikä tahansa muu poistumiskoodi tarkoittaa, että komento epäonnistui. Voit tarkastella poistumiskoodia minkä tahansa komennon suorittamisen jälkeen käyttämällä $? muuttuja. Katso alla oleva esimerkki.

shell-komennon poistumiskoodi
Voit määrittää komentotulkkikomentosarjallesi poistumiskoodin manuaalisesti. Tätä voidaan käyttää ehdollisten lauseiden kanssa ilmaisemaan, saavutettiinko käsikirjoituksen tarkoitus vai ei.
Esimerkki
#!/bin/sh read x if [ $x -ne 10 ] then echo failed exit 1 else echo passed exit 0 fi>

shell-komennon poistumiskoodi
tallentaa komentosarjan nimen. Katsotaanpa esimerkkiä tämän kaiken ymmärtämiseksi.
amisha patel
#!/bin/sh echo 'No of arguments is $#' echo 'Name of the script is Shell on käyttöjärjestelmän käyttöliittymä. Se hyväksyy käyttäjien komennot ja tulkitsee ne käyttöjärjestelmälle. Jos haluat suorittaa joukon komentoja yhdessä, voit tehdä sen luomalla komentotulkkikomentosarjan. Shell-skriptit ovat erittäin hyödyllisiä, jos sinun on suoritettava jokin tehtävä rutiininomaisesti, kuten varmuuskopiointi. Voit luetella nämä komennot ja suorittaa ne kaikki yhdellä skriptillä. Katsotaanpa, kuinka voit luoda shell-skriptin ja suorittaa sen Linuxissa.
Shell-skriptin luominen
Kirjaudu Linux-koneellesi ja avaa pääte, siirry kansioon, johon haluat tallentaa komentosarjan. Shell-skriptit päättyvät tunnisteella .sh. Luodaan ensimmäinen shell-skriptimme. Kirjoita
touch script.sh>
Nyt tämä komentosarjatiedosto ei ole oletusarvoisesti suoritettavissa, meidän on annettava suoritettavat oikeudet tälle tiedostolle. Kirjoita
chmod +x script.sh>
Nyt lisäämme joitain komentoja tähän komentosarjaan. Avaa tämä komentosarja millä tahansa valitsemallasi tekstieditorilla (komentorivipohjainen tai GUI-pohjainen) ja lisää komentoja. Käytämme nanoa. Kirjoita
nano script.sh>
Lisää seuraavat komennot testataksesi tätä komentosarjaa
echo This is my first shell script touch testfile ls echo End of my shell script>
Tallenna muutokset ja suorita komentosarja kirjoittamalla
./script.sh>

Kuvakaappaus yllä olevista vaiheista
Näet, se suoritti kaikki määritetyt komennot.
Kommentit shell-skriptissä
Mitä tahansa riviä, joka alkaa #-merkillä komentotulkkikomentosarjassa, käsitellään kommentina ja komentotulkki jättää ne huomiotta suorituksen aikana, paitsi shebang-rivi, jonka näemme myöhemmin tässä artikkelissa. Katsotaanpa esimerkkiä. Shell-skripti luodaan seuraavalla sisällöllä.
# This is a comment echo Testing comments in shell script>

Kommentit Shell Scriptissa
Huomaat, että kommentti jätetään huomiotta.
Muuttujat Shell Scriptissa
Kyllä, Shell-skriptit tukevat muuttujien käyttöä, eikä meidän tarvitse määrittää muuttujan tyyppiä sen määrittelyn aikana. Muuttujia on kahdenlaisia:
- Järjestelmän määrittämät muuttujat
- Käyttäjän määrittämät muuttujat.
Järjestelmän määrittämät muuttujat, joita kutsutaan myös ympäristömuuttujiksi, kirjoitetaan yleensä isoilla kirjaimilla. Voit tarkastella kaikkia nykyisiä ympäristömuuttujia printenv-komennolla. Käyttäjä määrittää käyttäjän määrittämät muuttujat, ja ne ovat olemassa vain komentosarjan suorittamisen aikana. Voit määrittää muuttujan kirjoittamalla sen nimen ja antamalla arvon =-merkillä ja pääset käsiksi muuttujaan lisäämällä $ ennen muuttujan nimeä. Muuttujat esitetään seuraavassa esimerkkiskriptissä.
# Accessing an Environment Variable echo $USER # Creating and accessing User defined Variable variable_name='Geeksforgeeks' echo $variable_name>

Muuttujat Shell Scriptissa
Shell Script -tulkin määrittäminen
Linuxissa on saatavilla monia Shellejä, kuten The bourne shell(sh), The Korn Shell(ksh) ja GNU Bourne-Again Shell(bash). Shellille kirjoitettuja skriptejä kutsutaan shell-skripteiksi, ja ne voidaan tulkita sekä ksh- että bash-kuorilla. ksh ja Bash ovat parannettuja versioita alkuperäisestä sh-kuoresta ja niissä on enemmän ominaisuuksia kuin sh. Bash on yleensä oletuskuori useimmissa Linux-jakeluissa, ja erityisesti bash-shellille kirjoitettuja komentosarjoja kutsutaan bash-skripteiksi.
Voit määrittää, mitä komentosarjaa komentosarja käyttää, vaikka komentosarja suoritettaisiin toisesta komentotulkkipäätteestä. Voit tehdä tämän lisäämällä #! komentosarjatiedoston päällä, jota seuraa valitun kuoren absoluuttinen polku. Jos haluat määrittää bashin tulkiksi, lisää seuraava rivi komentosarjan päälle.
#!/bin/bash>
Tätä linjaa kutsutaan shebang-linjaksi.
Huomautus: Tämä toimii vain, jos järjestelmääsi on asennettu bash.
Vertailuoperaattorit
Voit verrata kahta muuttujaa komentotulkkikomentosarjassa. Teemme näitä vertailuja tehdäksemme päätöksiä, näemme kuinka se tehdään myöhemmin tässä artikkelissa, mutta ennen sitä tässä on luettelo joistakin vertailuoperaattoreista.
Kokonaislukuvertailu
| Operaattori | Kuvaus |
| -ekv | on yhtä suuri kuin |
| - On | ei ole yhtä suuri kuin |
| -gt | on suurempi kuin |
| -ge | on suurempi tai yhtä suuri kuin |
| -lt | on vähemmän kuin |
| - | on pienempi tai yhtä suuri kuin |
Merkkijonojen vertailu
| Operaattori | Kuvaus |
| == | on yhtä suuri kuin |
| != | ei ole yhtä suuri kuin |
| < | on pienempi kuin ASCII-aakkosjärjestyksessä |
| > | on suurempi kuin ASCII-aakkosjärjestyksessä |
Lisäämme ennen, koska ne on pakotettava, kun ne kirjoitetaan [ ]-konstruktioon. Katsotaan nyt, missä näitä käytetään.
Ehdolliset lausunnot
Ehdollisia lauseita käytetään koodilohkon suorittamiseen vain, kun tietyt ehdot täyttyvät. Shell-skriptit tukevat ehdollisten lausekkeiden käyttöä. Käytämme vertailuoperaattoreita olosuhteiden tarkistamiseen. Katsotaanpa muutama ehdollinen lausunto.
Jos lausunto
Se tarkistaa ehdon, ja jos se on ehdollinen tosi, se suorittaa komennot.
Syntaksi
if [ condition ] then #statements fi>
Katsotaanpa esimerkkiä.
#!/bin/sh x=10 y=11 if [ $x -ne $y ] then echo 'Not equal' fi>

.if lause
Jos-muu lausunto
If-else-käskyssä voit määrittää joukon komentoja, jotka suoritetaan, jos ehto ei täyty.
Syntaksi
if [ condition ] then #set of statements if the condition is true else #set of statements if the condition is false fi>
Katsotaanpa esimerkkiä
#!/Syntaxbin/sh x=10 y=10 if [ $x -ne $y ] then echo 'Not equal' else echo 'They are equal' fi>

.if-else lauseke
On muitakin ehdollisia lausuntoja, voit lukea niistä tässä .
Huomautus: Kirjoita välilyönti [ ja ennen ] jälkeen samalla kun määrität tarkistettavan ehdon, muuten saat virheilmoituksen.
Silmukat
Silmukoiden avulla voit tehdä joukon komentoja uudestaan ja uudestaan, kunnes tietty ehto täyttyy. Katsotaanpa joitain silmukoita.
Vaikka silmukka
Se alkaa suorittaa määritettyjä komentoja, jos ehto on tosi, ja toistaa niitä, kunnes ehto on epätosi.
Syntaksi
while [ condition ] do #set of statements done>
Katsotaanpa esimerkkiä.
#!/bin/sh x=2 while [ $x -lt 6 ] do echo $x x=`expr $x + 1` done>

Vaikka silmukka
Sisällytämme lausekkeen ``:n sisään, kun asetamme sen muuttujaan. Voit lukea expr-komennosta täältä.
Silmukalle
For-silmukassa muuttuja toistuu arvoluettelon yli ja päättyy, kun iteroitavia arvoja ei ole enää.
Syntaksi
for var in val1 val2 val3 do #statements done>
Katsotaanpa esimerkkiä.
#!/bin/sh for var in 2 4 5 8 do echo $var done>

silmukalle
Voit lukea silmukoista yksityiskohtaisesti tässä .
Positiaaliset argumentit
Paikkaargumentit ovat argumentteja tai arvoja, jotka välitämme komentosarjan komentosarjalle suoritettaessa komentosarjaa. Niihin päästään muuttujilla $0, $1, $2 … $9. Tämän lisäksi niihin viittaavat ${10}, ${11} ja niin edelleen. $# tallentaa hyväksyttyjen argumenttien lukumäärän ja $0 tallentaa komentosarjan nimen. Katsotaanpa esimerkkiä tämän kaiken ymmärtämiseksi.
#!/bin/sh echo 'No of arguments is $#' echo 'Name of the script is $0' echo 'First argument is $1' echo 'Second argument is $2'>
Voit välittää argumentit kirjoittamalla ne terminaaliin komentosarjan nimen jälkeen alla olevan kuvan mukaisesti.

Positiaaliset argumentit
Komentojen tulosteen tallentaminen
Voit tallentaa komentojen tulosteet muuttujan sisään shell-skriptissä. Voit tehdä sen kahdella tavalla.
Syntaksi
#Syntax 1 var=$(a valid linux command) #Syntax 2 var2=`a valid linux command`>
Katsotaanpa esimerkkiä.
#!/bin/sh b=$(pwd) c=`pwd` echo $b echo $c d=$(ls /bin | grep bash) echo $d>

Komentojen tulosteen tallentaminen
Poistu komentotulkkikomentojen koodit
Aina kun komento päättyy ja palauttaa ohjauksen pääprosessille, se palauttaa poistumiskoodit välillä 0 - 255. Poistumiskoodi 0 tarkoittaa, että komento onnistui, ja mikä tahansa muu poistumiskoodi tarkoittaa, että komento epäonnistui. Voit tarkastella poistumiskoodia minkä tahansa komennon suorittamisen jälkeen käyttämällä $? muuttuja. Katso alla oleva esimerkki.

shell-komennon poistumiskoodi
Voit määrittää komentotulkkikomentosarjallesi poistumiskoodin manuaalisesti. Tätä voidaan käyttää ehdollisten lauseiden kanssa ilmaisemaan, saavutettiinko käsikirjoituksen tarkoitus vai ei.
Esimerkki
#!/bin/sh read x if [ $x -ne 10 ] then echo failed exit 1 else echo passed exit 0 fi>

shell-komennon poistumiskoodi
' echo 'First argument is ' echo 'Second argument is '>
Voit välittää argumentit kirjoittamalla ne terminaaliin komentosarjan nimen jälkeen alla olevan kuvan mukaisesti.

Positiaaliset argumentit
Komentojen tulosteen tallentaminen
Voit tallentaa komentojen tulosteet muuttujan sisään shell-skriptissä. Voit tehdä sen kahdella tavalla.
Syntaksi
#Syntax 1 var=$(a valid linux command) #Syntax 2 var2=`a valid linux command`>
Katsotaanpa esimerkkiä.
#!/bin/sh b=$(pwd) c=`pwd` echo $b echo $c d=$(ls /bin | grep bash) echo $d>

Komentojen tulosteen tallentaminen
Poistu komentotulkkikomentojen koodit
Aina kun komento päättyy ja palauttaa ohjauksen pääprosessille, se palauttaa poistumiskoodit välillä 0 - 255. Poistumiskoodi 0 tarkoittaa, että komento onnistui, ja mikä tahansa muu poistumiskoodi tarkoittaa, että komento epäonnistui. Voit tarkastella poistumiskoodia minkä tahansa komennon suorittamisen jälkeen käyttämällä $? muuttuja. Katso alla oleva esimerkki.

shell-komennon poistumiskoodi
Voit määrittää komentotulkkikomentosarjallesi poistumiskoodin manuaalisesti. Tätä voidaan käyttää ehdollisten lauseiden kanssa ilmaisemaan, saavutettiinko käsikirjoituksen tarkoitus vai ei.
Esimerkki
#!/bin/sh read x if [ $x -ne 10 ] then echo failed exit 1 else echo passed exit 0 fi>

shell-komennon poistumiskoodi