Водич за почетнике БАСХ - упоређивање ствари

01 од 08

Водич за почетнике БАСХ - упоређивање ствари

БАСХ Туториал - упоређивање струна.

У претходном дијелу БАСХ туториала погледали смо условне изјаве .

Тај водич је био веома дуг, али стварно је само показао како контролисати ток логике. Овај водич показује различите начине на које можете упоређивати варијабле.

Приказана слика приказује први пример у овом водичу:

#! / бин / басх

наме1 = "гари"
наме2 = "боб"

ако је ["$ наме1" = "$ наме2"]
онда
ецхо "имена се подударају"
друго
ецхо "имена се не подударају"
фи


У горенаведеном сценарију сам дефинисао две варијабле назване наме1 и наме2 и додијелили им вриједности "гари" и "боб". Пошто су варијабле садржане између знакова цитата, они се зову стринг променљиве које постају релевантније док се туториал наставља.

Сва скрипта је упоређивање вредности $ наме1 и $ наме2 и ако се подударају са излазом стринга "имена се подударају" и ако не излазе стринг "имена се не подударају".

Наводи о ознакама око $ наме1 и $ наме2 варијабли су важни јер ако вредност ни један од њих није подешен онда скрипта и даље ради.

На примјер, ако $ наме1 никада није постављен онда бисте упоређивали са "боб". Без натписа биће вам остављено = "боб" што очито не успије.

Такође можете користити ознаку! = За дефинисање неједнаког на сљедећи начин:

ако је ["$ наме1"! = "$ наме2"]

02 од 08

Водич за почетнике БАСХ - упоређивање жица

БАСХ Туториал - упоређивање струна.

У претходном примеру тест упоређује исте две жице и поставља питање да ли Гари долази пре боба у абецеди?

Јасно је да је одговор не.

Скрипт уводи мање од оператора (<). Пошто се оператер мањи од оператера користи и за преусмеравање, мораш да га избегнеш са косом (\) да би то значило мање него што је разлог зашто сам у горњој скрипти упоредио "$ наме1" \ <"$ наме2".

Супротно од мање него што је очигледно веће од. Уместо да користите \ <користите \>.

На пример

ако ["$ наме1" \> "$ наме2"]

03 од 08

Водич за почетнике БАСХ - упоређивање жица

БАСХ Туториал - упоређивање струна.

Ако желите да тестирате да ли променљива има вредност можете користити следећи тест:

ако [-н $ наме2]

У горњој скрипти сам тестирао да ли је $ наме2 дата вриједност и ако не постоји порука "Не постоји боб, никада се није појавио боб".

04 од 08

Водич за почетнике БАСХ - упоређивање жица

БАСХ Туториал - упоређивање струна.

На прошлом слајду смо обрадили да ли је променљива постављена или не. Понекад је мада променљива можда била постављена, али она можда неће имати вредност.

На пример:

наме1 = ""

Да бисте тестирали да ли варијабла има вриједност или не (тј. Има дуљину нуле), користите -з на сљедећи начин:

ако [-з $ наме1]

У горенаведеном скрипту поставио сам $ наме1 у низ нултог дијела, а затим га упоређивао помоћу -з. Ако је $ наме1 нула у дужини, биће приказана порука "Гари је отишла на вечеру".

05 од 08

Водич за почетнике БАСХ - упоређивање бројева

БАСХ Туториал - упоређивање бројева.

До сада су сва поређења била за струне. Шта је са упоређивањем бројева?

Наведени скрипт показује пример поређења два броја:

#! / бин / басх

а = 4
б = 5

ако [$ а = $ б]
онда
ецхо "4 = 5"
друго
ецхо "4 не одговара 5"
фи

Да бисте поставили променљиву број, једноставно је подесите без наводника. Тада можете упоређивати бројеве са једнаким знаком.

Ја више волим да користим следећег оператора да упоредим два броја:

Ако [$ а -ек $ б]

06 од 08

Водич за почетнике БАСХ - упоређивање бројева

БАСХ Туториал - упоређивање бројева.

Ако желите да упоредите да ли је број мањи од другог, можете користити мање од оператера (<). Као и код жица, мораш да побегнеш мање од оператера са косом. (\ <).

Бољи начин упоређивања бројева је умјесто тога користити сљедећу нотацију:

На пример:

ако [$ а -лт $ б]

ако [$ а -ле $ б]

ако [$ а -ге $ б]

ако [$ а -гт $ б]

07 од 08

Водич за почетнике БАСХ - упоређивање бројева

БАСХ Туториал - упоређивање бројева.

Коначно за овај водич, ако желите да тестирате да ли су два броја различита, можете користити мање или више оператора заједно (<>) или -не на следећи начин:

ако [$ а <> $ б]

ако [$ а -не $ б]

08 од 08

Водич за почетнике БАСХ - Оператори упоређивања - резиме

Ако сте пропустили прва три дела овог водича, можете их пронаћи тако што ћете кликнути на следеће линкове:

У следећем делу водича ћу покривати аритметику.