Dažādiem programmēšanas mērķiem mums jāsalīdzina divu virkņu vērtība. Iebūvētās funkcijas tiek izmantotas daudzās programmēšanas valodās, lai pārbaudītu divu virkņu vienādību. Jūs varat pārbaudīt divu virkņu vienādību un nevienlīdzību bash, izmantojot ja paziņojums, apgalvojums. == tiek izmantots, lai pārbaudītu vienlīdzību un ! = izmanto, lai pārbaudītu virkņu nevienlīdzību. Jūs varat daļēji salīdzināt divu virkņu vērtības arī bash. Kā jūs varat salīdzināt virkņu vērtības bash, tiek parādīts, izmantojot dažādus šīs apmācības piemērus.
1. piemērs: virkņu salīdzinājums, izmantojot == operatorus
Nav iebūvētas salīdzināšanas funkcijas, lai pārbaudītu divu virkņu vērtību vienādību bash, tāpat kā citas standarta programmēšanas valodas. Nākamajā skriptā divi virkņu mainīgie, strval1 un strval2 tiek deklarēti. Šo divu virkņu mainīgo vienlīdzību pārbauda, izmantojot pirmo ja scenārija paziņojums. Vērtība strval1 tiek salīdzināts ar virknes vērtību, lai pārbaudītu vienādību otrajā ja paziņojums, apgalvojums.
#!/bin/bash
strval1='Ubuntu'
strval2='Windows'
#Pārbaudiet vienādības divus virkņu mainīgos
ja [ $ strval1==$ strval2 ];tad
izmest ārā 'Stīgas ir vienādas'
citādi
izmest ārā 'Stīgas nav vienādas'
būt
#Pārbaudiet mainīgā vienādojumu ar virknes vērtību
ja [ $ strval1=='Ubuntu' ];tad
izmest ārā 'Linux operētājsistēma'
citādi
izmest ārā 'Windows operētājsistēma'
būt
Izeja:
Pirmais salīdzinājums nav vienāds, bet otrs - vienāds.
2. piemērs: virkņu salīdzinājums, izmantojot operatoru! =
Divu virkņu mainīgo nevienlīdzība tiek pārbaudīta nākamajā piemērā. Šeit divas vērtības nav vienādas. Tātad, ja nosacījums būs patiess un Windows operētājsistēma izdrukās.
#!/bin/bashstrval1='Ubuntu'
strval2='Windows'
#Pārbaudiet mainīgā nevienādību ar virknes vērtību
ja [ $ strval2 !='Ubuntu' ];tad
izmest ārā 'Windows operētājsistēma'
citādi
izmest ārā 'Linux operētājsistēma'
būt
Izeja:
3. piemērs: daļējs virkņu salīdzinājums
Daļējo vērtību var salīdzināt, izmantojot bash skripta aizstājējzīmes rakstzīmi. Nākamajā skriptā * tiek izmantota kā aizstājējzīmes zīme daļējai atbilstībai. Stīgu mainīgais, strval satur vārdu Internets. Tātad, pirmais ja no skripta tiks atgriezta patiesa un izdrukāta Daļēji atbilst . Bash ir reģistrjutīgs. Šim nolūkam otrais ja no skripta atgriezīs nepatiesu par interneta izmantošanu kā daļēju virkni, kas pēc burtu salīdzinājuma nav vienāda.
#!/bin/bashstrval='Microsoft Internet Explorer'
ja [[ $ strval==*Internets* ]];
tad
izmest ārā “Daļēji atbilst”
citādi
izmest ārā 'Nav sakritības'
būt
ja [[ $ strval==*Internets* ]];
tad
izmest ārā “Daļēji atbilst”
citādi
izmest ārā 'Nav sakritības'
būt
Izeja:
4. piemērs. Salīdziniet virkni ar lietotāja ievadīto vērtību
Dažreiz mums ir jāsalīdzina lietotāja virknes vērtība ar noteiktu virknes vērtību programmēšanas nolūkos. Nākamajā piemērā virknes dati tiks ņemti no lietotāja kā ievade un salīdzināta datu nevienlīdzība ar fiksētu vērtību. Ja nosacījums ir patiess, tas tiks izdrukāts Ieraksts nav atrasts , pretējā gadījumā tas tiks izdrukāts Ieraksts atrasts .
#!/bin/bashizmest ārā 'Ievadiet savu vārdu'
lasītievadi
ja [ $ ievade !='Fahmida' ];
tad
izmest ārā 'Nav atrasts ieraksts'
citādi
izmest ārā 'Ieraksts atrasts'
būt
Izeja:
Šīs nodarbības video ir šeit:
Stīgu salīdzināšanas uzdevums bash versijā jums būs vieglāks pēc iepriekš minēto piemēru pabeigšanas ar skaidru izpratni.