Principessa Guide A BASH - Comparare Things

01 di 08

Principessa Guide A BASH - Comparare Things

Tutorial BASH - Comparare Strings.

In a parte previa di u tutorialu BASH avemu vistutu indiziosu cunnitatu .

Dita guida era assai longa ma veramente solu dimostrava comu cuntrullà u flussu di logica. Questa guida spicca i diversi modi in quale pudete paragunà variàbili.

A imagine dettazione mostra u primu esempiu in a guida di sta simana:

#! / bin / bash

name1 = "gary"
name2 = "bob"

se ["$ name1" = "$ name2"]
dopu
Eccu "l 'appartementi match"
altru
Eccu "i nomi ùn currispondenu micca"
fi


In l'script di supra, aghju sceltu di duie varianti chjamati nome1 è nome2 è hà assignatu i valori "gary" è "bob". Cumu e variàbbili sò cuntenuti trà e cummentu sò chjamati variate di corda chì saranu più pertinenti cumu u tutoriale passa.

Tuttu u scrittore si fa paragunà u valore di $ name1 è $ name2 è se cunforme u risultatu da a catena "i partitu di i nòmini" è se ùn fanne micca eseguitu u stringu "i nomi ùn anu micca truvatu".

A quotazioni in quantità à u $ name1 è a varianti à $ name2 sò impurtanti perchè se u valore di qualse d'elli ùn hè micca statu stabilitu, u scrittore hà sempre aduprà.

Per esempiu, se $ name1 hè statu mai stabilitu, puderete paralizà "" cun "bob". Senza a qualità ci hè stata mancata cun = "bob" chì evalla bè.

Pudete ancu aduprà a! = Notazione per definisce micca uguali di a siguenti:

se ["$ name1"! = "$ name2"]

02 di 08

A guidate di principianti à BASH - Comparing Strings

Tutorial BASH - Comparare Strings.

In l'esempiu di l'esempiu, a test compara li stessi duie stondi è si ponu dumannà a quistione di ghjè un avvicina prima di u bob?

Claramente a risposta hè nè.

L'script introduces the less than operator (<). Cumu l'operatore di menu hè ancu utilizzatu per a redireczione avete scappatu cù un slash (\) per avè significatu menu di quì hè chì ghjè perchè in u guidatu di prima, hà cumparatu "$ name1" \ <"$ name2".

U cuntattu di menu di menu hè ovvisu più grande. Invece di utilizà \ .

Per esempiu

se ["$ name1" \> "$ name2"]

03 di 08

A guidate di principianti à BASH - Comparing Strings

Tutorial BASH - Comparare Strings.

Se vulete pruvenerà se una varieghja hè un valore, pudete aduprà a prova seguente:

se [-n $ name2]

In u guidanu di prima, aghju pruvatu se $ name2 hà datu un valore è se micca u messagiu "Ùn ci hè micca bob, ùn era mai un prugettu".

04 di 08

A guidate di principianti à BASH - Comparing Strings

Tutorial BASH - Comparare Strings.

In u slide di u passatu hà dettu chì una variàzione hè stata o micca. A volte per chì una variàbile puderà esse stabbiluta ma ùn pudia micca avè avutu un valore.

Per esempiu:

name1 = ""

Per pruvà si una valecrive hà un valore o micca (per esempiu hà una durata di cero) utilizate -z cum'è:

se [-z $ name1]

In u script di supra, aghju stabilitu $ name1 à un stringu di coghju di u cero è hà da paragunà cù e -z. Se $ name1 hè un cero in longevuli u messagiu "Gary hà sbultu à a sera".

05 di 08

A guidate di principianti à BASH - Comparing Numbers

Tutorial BASH - Comparing Numbers.

Quelli chì sò e comparaison sò stati stati. Ciò di paragunarii nummari?

U script di supra detta un esempiu di paragunarii dui numeri:

#! / bin / bash

a = 4
b = 5

se [$ a = $ b]
dopu
Ecu "4 = 5"
altru
Ecu "4 ùn hè micca uguali 5"
fi

Per definisce una variàbbilita per esse un numme solu ghjustificatu senza quotazione. Puderete cuntattà i numeri cù un signu ugguali.

Preferisamente per uttene l'operatore seguente per pattare di dui numeri:

Sì [$ a -eq $ b]

06 di 08

A guidate di principianti à BASH - Comparing Numbers

Tutorial BASH - Comparing Numbers.

Se vulete comparar o nant'à un numeru hè menu di n'avutru numeru pudete aduprà l'uperazione di l'operatore (<). Cum'è cù filamenti avete esse scappatu l'imbusca cù un slash. (\ <).

Un megliu modu di paragunarii numeri è di utilizà a notazione seguente invece:

Per esempiu:

se [$ a -lt $ b]

se [$ a -le $ b]

se [$ a -ge $ b]

se [$ a -gt $ b]

07 di 08

A guidate di principianti à BASH - Comparing Numbers

Tutorial BASH - Comparing Numbers.

Infine per questa guidata, se vulete prova per esse dui numeri sò diffirenti pudete aduprà l'o menu di quantu è più grande chì l'operatori together (<>) o -ne as follows:

se [$ a <> $ b]

se [$ a -ne $ b]

08 di 08

A guidate di principianti à BASH - Comparative Operators - Summary

Se avete sbagliatu i primi trè parte di sta guida, pudete truvà un cliccu nantu à i seguenti vini:

In a parte sussurna di a guidazione, seraghju cupiatu aritmetica.