Za različite programske svrhe moramo usporediti vrijednost dva niza. Ugrađene funkcije koriste se u mnogim programskim jezicima za provjeru jednakosti dva niza. Jednakost i nejednakost dva niza u bashu možete provjeriti pomoću ako izjava. == koristi se za provjeru jednakosti i ! = koristi se za provjeru nejednakosti nizova. Djelomično možete usporediti vrijednosti dva niza također u bashu. Kako možete usporediti vrijednosti niza u bash -u prikazano je pomoću različitih primjera u ovom vodiču.
Primjer-1: Usporedba nizova pomoću operatora ==
Ne postoji ugrađena funkcija usporedbe za provjeru jednakosti dviju vrijednosti niza u bash-u poput drugog standardnog programskog jezika. U sljedećoj skripti dvije varijable niza, strval1 i strval2 se deklariraju. Pravednost ove dvije varijable niza provjerava se pomoću prve ako izjava o scenariju. Vrijednost strval1 uspoređuje se s vrijednošću niza radi provjere jednakosti u drugom ako izjava.
#!/bin/bash
strval1='Ubuntu'
strval2='Windows'
#Provjerite jednakost dvije varijable niza
ako [ $ strval1==$ strval2 ];zatim
izbaciti 'Žice su jednake'
drugo
izbaciti 'Žice nisu jednake'
biti
#Provjerite jednakost varijable s vrijednošću niza
ako [ $ strval1=='Ubuntu' ];zatim
izbaciti 'Linux operativni sustav'
drugo
izbaciti 'Windows operativni sustav'
biti
Izlaz:
Prva usporedba nije jednaka, a druga je jednaka.
Primjer-2: Usporedba nizova pomoću operatora! =
Nejednakost dviju varijabli niza provjerava se u sljedećem primjeru. Ovdje dvije vrijednosti nisu jednake. Dakle, ako će uvjet biti istinit i Windows operativni sustav ispisat će.
#!/bin/bashstrval1='Ubuntu'
strval2='Windows'
#Provjerite nejednakost varijable s vrijednošću niza
ako [ $ strval2 !='Ubuntu' ];zatim
izbaciti 'Windows operativni sustav'
drugo
izbaciti 'Linux operativni sustav'
biti
Izlaz:
Primjer-3: Djelomična usporedba nizova
Djelomičnu vrijednost možete usporediti pomoću zamjenskog znaka u bash skripti. U sljedećoj skripti, * koristi se kao zamjenski znak za djelomično podudaranje. Varijabla niza, strval sadrži riječ Internet. Dakle, prvi ako skripte će vratiti true i ispisati Djelomično podudaranje . Bash razlikuje velika i mala slova. Za ovo, drugo ako skripte vratit će se false za korištenje interneta kao djelomičnog niza koji nije jednak slovnom usporedbom.
#!/bin/bashstrval='Microsoft Internet Explorer'
ako [[ $ strval==*Internet* ]];
zatim
izbaciti 'Djelomično podudaranje'
drugo
izbaciti 'Nema podudaranja'
biti
ako [[ $ strval==*Internet* ]];
zatim
izbaciti 'Djelomično podudaranje'
drugo
izbaciti 'Nema podudaranja'
biti
Izlaz:
Primjer 4: Usporedite niz s korisničkom ulaznom vrijednošću
Ponekad moramo usporediti vrijednost niza koju je uzeo korisnik s određenom vrijednošću niza za potrebe programiranja. U sljedećem primjeru, niz podataka će se uzeti od korisnika kao ulaz i usporediti nejednakost podataka s fiksnom vrijednošću. Ako je uvjet istinit, ispisat će se nema pronađenih zapisa , inače će se ispisati Zapis je pronađen .
#!/bin/bashizbaciti 'Unesite svoje ime'
čitatiulazni
ako [ $ ulaz !='Fahmida' ];
zatim
izbaciti 'Nema pronađenih zapisa'
drugo
izbaciti 'Zapis je pronađen'
biti
Izlaz:
Video ove lekcije je ovdje:
Zadatak usporedbe nizova u bashu bit će vam lakši nakon što gornje primjere dovršite s jasnim razumijevanjem.