Kezdõ útmutató a BASH-hoz - 1. rész - Hello World

Rengeteg útmutatás található az interneten, bemutatva, hogyan hozhat létre Shell szkripteket a BASH használatával, és ennek az útmutatónak az a célja, hogy kissé más spin-ot adjon, mert azt írta valaki, aki nagyon kevés shell scripting tapasztalattal rendelkezik.

Most azt gondolhatja, hogy ez egy buta ötlet, de azt találom, hogy néhány útmutatók beszélnek veled, mintha már egy szakértő, és más útmutatók túl hosszú időt vesz igénybe vágni a hajsza.

Míg a LINUX / UNIX shell parancsfájl-tapasztalatom korlátozott, kereskedelemben szoftverfejlesztő vagyok, és a parancsfájlokat használom, mint a PERL, a PHP és a VBScript.

Az útmutató lényege, hogy megtanulsz tanulni, és minden információt, amit felvenni fogok átadni neked.

Elkezdeni

Nyilvánvalóan sok olyan elmélet létezik, amellyel azonnal elmondhatom Önt, például a különböző típusú héjak leírását és a BASH KSH és CSH használatának előnyeit.

A legtöbb ember, amikor valami új tanulást szeretne belevágni, és először néhány gyakorlati leckét kezd, és ezzel szem előtt tartva, nem fogok olyan trivia-kkal szedni, ami most nem fontos.

Mindaz, amire szükséged van az útmutató követéséhez, egy szövegszerkesztő és egy terminál, amely a BASH-ot (az alapértelmezett shell a legtöbb Linux disztribúcióban) használja.

Szövegszerkesztők

Az általam olvasott egyéb útmutatók azt sugallják, hogy szövegszerkesztőre van szüksége, amely tartalmazza a parancsok színkódolását, és az ajánlott szerkesztők VIM vagy EMACS .

A színkódolás kedves, mivel a parancsokat a beírásnál kiemeli, de az abszolút kezdőként az első néhány héten keresztül töltheti le a VIM és az EMACS tanfolyamokat anélkül, hogy egyetlen kódsorozatot írna.

A kettő közül inkább az EMACS-ot preferálom, de őszinte legyek, ha egyszerű szerkesztőt használok, mint a nano , a gedit vagy a leafpad.

Ha szkripteket ír a saját számítógépére, és tudod, hogy mindig hozzáférhetsz egy grafikus környezethez, akkor kiválaszthatja a leginkább megfelelő szerkesztőt, és lehet grafikus, például a GEdit vagy egy közvetlenül a terminálon futó szerkesztő mint például a nano vagy a vim.

Ennek az útmutatónak a céljaként a nano használatát fogom használni, mivel a Linux disztribúciók többségére telepítve van, és ezért valószínűleg hozzáférhet hozzá.

A terminál ablak megnyitása

Ha olyan Linux-disztribúciót használ, amely grafikus asztalon, mint például Linux Mint vagy Ubuntu, akkor megnyithatja a terminál ablakot a CTRL + ALT + T billentyűkombináció megnyomásával.

Hol kell elhelyezni a szkripteket

Ennek az oktatóanyagnak a használatához a szkripteket elhelyezheti a saját mappájába.

A terminál ablakában győződjön meg róla, hogy otthoni mappájába a következő parancs beírásával rendelkezik:

cd ~

A cd parancs a változó könyvtárat jelenti, és a tilde (~) egy parancsikont az otthoni mappájához.

A következő parancs beírásával ellenőrizheti, hogy a helyes helyen tartózkodik-e:

pwd

A pwd parancs megmutatja a jelenlegi munkakönyvtárát (ahol a könyvtárfa van). Az én esetemben visszatért / home / gary.

Nyilvánvalóan nem szeretné, hogy a parancsfájlok közvetlenül a házimozi könyvtárba kerüljenek, így létrehozhat egy parancsfájlt tartalmazó mappát a következő parancs beírásával.

mkdir parancsfájlok

Váltson át az új parancsfájlok mappájába a következő parancs beírásával:

cd szkriptek

Az első forgatókönyve

A szokásos, amikor megtanulják programozni, hogy az első program egyszerűen csak a "Hello World" szavakat adja ki.

A scripts mappájából írja be a következő parancsot:

nano helloworld.sh

Most adja meg a következő kódot a nano ablakban.

#! / bin / bash echo "hello világ"

A CTRL + O gombbal mentse el a fájlt, és a CTRL + X kilépjen a nano-ból.

A szkript maga a következőképpen épül fel:

A #! / Bin / bash-t bele kell foglalni az összes író tetejére, amelyet írsz, mert lehetővé teszi a tolmácsoknak és az operációs rendszernek a fájl kezelését. Alapvetően csak ne felejtsd el beilleszteni, és elfelejteni, hogy miért csinálod.

A második sor egy, az echo nevű parancs, amely a közvetlenül követendő szöveget adja ki.

Ne feledje, hogy ha több szót szeretnél megjeleníteni, akkor kettős idézőjeleket (") kell használnod a szavak körül.

A szkriptet a következő parancs beírásával futtathatja:

sh helloworld.sh

A "hello világ" szavaknak meg kell jelenniük.

A parancsfájlok futtatásának másik módja a következő:

./helloworld.sh

Az esélyek az, hogy ha a terminálon azonnal végrehajtod a parancsot, engedélyezési hibát kapsz.

A parancsfájl ilyen módon történő futtatásához adja meg a következőket:

sudo chmod + x helloworld.sh

Tehát mi is történt ott? Miért tudta futtatni a sh helloworld.sh-t az engedélyek megváltoztatása nélkül, de futott a .hehehoworld.sh probléma?

Az első módszer betölti a bash-tolmácsot, amely bevezeti a helloworld.sh-et, és meghatározza, hogy mit kell tennie vele. A bash-tolmácsnak már van engedélye a futtatáshoz és csak a script parancsfuttatásához szükséges.

A második módszer lehetővé teszi az operációs rendszer számára, hogy mit kell tennie a szkripthez, ezért végrehajtásához futtatható bit szükséges.

A fenti szkript rendben volt, de mi történik, ha meg szeretné jeleníteni az idézőjeleket?

Számos módon lehet ezt megvalósítani. Például az idézőjelek előtt a következőket teheti vissza:

echo \ "hello világ \"

Ez a "hello világ" kimenetét eredményezi.

Várjon egy percet, mi van akkor, ha meg szeretné jeleníteni a "hello világot"?

Hát menekülhetsz a menekülési karakterekből is

echo \\ "\" hello világ \\ "\"

Ez létrehozza a "Hello world" kimenetet.

Most már tudom, hogy mit gondolsz. De nagyon szeretnék megjeleníteni \\ "\" hello world \\ "\"

A visszhangot használva ezekkel a menekülési karakterekkel meglehetősen buta. Van egy alternatív parancs, amellyel a nevezett printf-t használhatod.

Például:

printf '% s \ n "" \\ "\" hello világ \\ "\"'

Vegye figyelembe, hogy a megjeleníteni kívánt szöveg az egyes idézőjelek között van. A printf parancs kiadja a szkript szövegét. A% s azt jelenti, hogy megjelenik egy karakterlánc, a \ n új sort ad ki.

összefoglalás

Nem igazán fedeztünk fel sokat az alapon, de remélhetőleg az első forgatókönyved dolgozik.

A következő részben a hello world szkript javításával foglalkozunk, hogy különböző színekben jelenítsük meg a szöveget, elfogadjuk és kezeljük a bemeneti paramétereket, változókat és megjegyezzük a kódot.