Skip to main content

Kezdõk Útmutató a BASH-hoz - A dolgok összehasonlítása

Gémbot | Dark Souls 2 végigjátszás 7. rész: Huntsman's Copse (Április 2025)

Gémbot | Dark Souls 2 végigjátszás 7. rész: Huntsman's Copse (Április 2025)
Anonim
01/08

Kezdõk Útmutató a BASH-hoz - A dolgok összehasonlítása

A BASH bemutató előző részében feltételes kijelentéseket vizsgáltunk.

Ez az útmutató nagyon hosszú volt, de valójában csak azt mutatta, hogyan lehet szabályozni a logika áramlását. Ez az útmutató bemutatja a változók különböző módozatait.

A fenti kép az első példát mutatja ebben a héten:

#! / Bin / bashnév1 = "Gary"NAME2 = "bob"ha "$ name1" = "$ name2"azután echo "a nevek mérkőzés"más echo "a nevek nem egyeznek"fi

A fenti szkriptben két változót neveztek el names1 és name2 névvel, és hozzárendeltem a "gary" és a "bob" értékeket. Mivel a változók az idézőjelek közé tartoznak, ezeket string változóknak nevezzük, amelyek relevánsabbá válnak, ahogyan a tutorial folytatódik.

Az összes script összehasonlítja a $ name1 és a $ name2 értékét, és ha megfelelnek a kimenetnek, a "a nevek egyeznek" stringet, és ha nem adja ki a "a nevek nem egyeznek" stringet.

A $ name1 és a $ name2 változók körüli idézőjelek fontosak, mert ha egyikük sem lett beállítva, akkor a szkript továbbra is működni fog.

Például ha a $ name1 soha nem volt beállítva, akkor összehasonlítaná a "bob" -ot. Az idézőjelek nélkül maradna = "bob", ami nyilvánvalóan sikertelen.

A (z) = = jelölés a következő egyenlettel nem azonosítható:

ha "$ name1"! = "$ name2" 02/08

Kezdõk Útmutató a BASH-hez - A húrok összehasonlítása

A fenti példában a teszt összehasonlítja ugyanazt a két karakterláncot, és felteszi a kérdést, hogy a bob előtt a gary jön az abc-ben?

Nyilvánvaló, hogy a válasz nem.

A forgatókönyv bevezeti a kevesebb operátort (<). Mivel a kevésbé operátort is átirányításra használják, akkor egy "slash" -nel kell elszöknie (), ami azt jelenti, hogy kevesebbet jelent, mint ami a fenti szkriptben összehasonlította a "$ name1" <"$ name2" értéket.

Az ellenkezője kisebb, mint nyilvánvalóan nagyobb, mint. A <használata > használata helyett.

Például

ha "$ name1"> "$ name2" 03/08

Kezdõk Útmutató a BASH-hez - A húrok összehasonlítása

Ha meg akarja tudni ellenőrizni, hogy van-e változó értéke, akkor a következő tesztet használhatja:

ha -n $ name2

A fenti szkriptben teszteltem, hogy $ name2 értéket kapott-e, és ha nem az üzenet: "Nincs bob, soha nem jelenik meg a bob".

04/08

Kezdõk Útmutató a BASH-hez - A húrok összehasonlítása

A múltbeli csúszkán azt fedeztük fel, hogy van-e beállítva egy változó vagy sem. Néha bár egy változó be van állítva, de lehet, hogy valójában nincs értéke.

Például:

name1 = ""

Annak tesztelésére, hogy egy változónak van-e értéke vagy sem (azaz nulla hosszúságú) használja a -z-t a következőképpen:

ha -z $ name1

A fenti parancsfájlban $ name1-et állítottam egy nulla hosszúságú stringre, majd összehasonlítottam a -z használatával. Ha a $ name1 nulla hosszúságú, megjelenik a "gary az esti este" üzenet.

05/08

Kezdõk Útmutató a BASH-hoz - Számok összehasonlítása

Eddig az összes összehasonlítás a húrokra vonatkozott. Mi a helyzet a számok összehasonlításával?

A fenti szkript példát mutat két szám összehasonlítására:

#! / Bin / basha = 4b = 5ha $ a = $ bazután echo "4 = 5"más echo "4 nem egyenlő 5"fi

Egy változó számjegyként történő beállításához egyszerűen idézőjelek nélkül állítsa be. Ezután összehasonlíthatja a számokat egyenlő jelekkel.

Azonban inkább a következő üzemeltetőt használom két szám összehasonlítására:

Ha $ a -eq $ b 06/08

Kezdõk Útmutató a BASH-hoz - Számok összehasonlítása

Ha összehasonlítani szeretné, hogy egy szám kisebb-e egy másik számnál, akkor a kevesebbet használhatja (<). A húrokhoz hasonlóan el kell menekülnie a kevesebbet, mint a kezelő. ( <).

A számok összehasonlításának jobb módja a következő jelölés alkalmazása:

  • Kevesebb, mint -lt
  • Kevesebb mint vagy egyenlő a -le értékkel
  • Nagyobb mint -gt
  • Nagyobb vagy egyenlő a -ge-vel

Például:

ha $ a -lt $ bha $ a -le $ bha $ a -ge $ bha $ a -gt $ b 07. 08

Kezdõk Útmutató a BASH-hoz - Számok összehasonlítása

Végül ennek az útmutatónak a segítségével, ha meg akarja tudni ellenőrizni, hogy két szám különbözik-e, akkor az operátorok kevesebb, mint az operátorokat (<>) vagy a -ne-t használhatják az alábbiak szerint:

ha $ a <> $ bha $ a -ne $ b 08. 08

BASH Kezdõ Útmutató - Összehasonlító Operátorok - Összefoglaló

Ha hiányolta az útmutató első három részét, az alábbi linkekre kattintva találja meg őket:

  • Helló Világ
  • Beviteli paraméterek
  • Feltételek és változók

Az útmutató következő részében aritmetikát fogok lefedni.