Ismerje meg a Linux Shell és az alapvető shell parancsfájl-nyelv tippjeit – I. rész
A kép többet mond, mint a szavak, és az alábbi kép mindent elmond a Linux működéséről.
Olvassa el még
- 5 Shell-szkript a shell-programozás megtanulásához – II. rész
- Áthajózás a Linux BASH Scripting világán – III. rész
A Linux Shell megértése
- Shell: Parancssori értelmező, amely összeköti a felhasználót az Operációs rendszerrel, és lehetővé teszi a parancsok végrehajtását vagy szöveges szkript létrehozását.
- Folyamat: Minden olyan feladatot, amelyet a felhasználó futtat a rendszerben, folyamatnak nevezünk. Egy folyamat alig bonyolultabb, mint egy feladat.
- Fájl: a merevlemezen (hdd) található, és egy felhasználó tulajdonában lévő adatokat tartalmaz.
- X-windows, más néven windows: A Linux olyan módja, ahol a képernyő (monitor) kis „részekre” osztható, amelyeket ablaknak<, amelyek lehetővé teszik a felhasználó számára, hogy egyszerre több dolgot is elvégezzen, és/vagy egyszerűen váltson egyik feladatról a másikra, és szép módon tekintse meg a grafikákat.
- Szöveges terminál: Olyan monitor, amely csak szöveges tartalom megjelenítésére képes, grafikák nélkül vagy nagyon egyszerű grafikus kijelzővel rendelkezik.
- Munkamenet: bejelentkezés be és kijelentkezés között eltelt idő.
Shell típusai szabványos Linux disztribúción
Bourne shell : A Bourne shell a korai verziókban használt egyik fő shell volt, és de facto szabvány lett. Írta: Stephen Bourne a Bell Labsnál. Minden Unix-szerű rendszernek van legalább egy, a Bourne-héjjal kompatibilis shellje. A Bourne shell program neve „sh”, és általában a fájlrendszer-hierarchiában a /bin/sh címen található.
C shell: A C shell-et Bill Joy fejlesztette ki a Berkeley Software Distribution számára. Szintaxisa a C programozási nyelv mintájára készült. Elsősorban interaktív terminálhasználatra használják, de ritkábban szkriptelésre és operációs rendszer vezérlésére. A C shell számos interaktív parancsot tartalmaz.
A móka kezdete! (Linux Shell)
Több ezer parancs létezik a parancssori felhasználók számára, mi lenne, ha mindegyiket megjegyezné? Hmmm! Egyszerűen nem lehet. A számítógép igazi ereje abban rejlik, hogy megkönnyítse a munkát, automatizálnia kell a folyamatot, és ezért szkriptekre van szüksége.
A szkriptek fájlban tárolt parancsok gyűjteményei. A shell képes olvasni ezt a fájlt, és úgy tudja végrehajtani a parancsokat, mintha a billentyűzeten írták volna be. A shell számos hasznos programozási funkciót is kínál, hogy a szkriptek valóban hatékonyak legyenek.
A Shell programozás alapjai
- Linux shell beszerzéséhez el kell indítania egy terminált.
- Ha látni szeretné, hogy milyen shellje van,futtassa az echo $SHELL parancsot.
- Linuxban a dollárjel ($) egy shell-változót jelöl.
- A „echo” parancs csak azt adja vissza, amit beír.
- A folyamat utasítása (|) több parancs láncolásakor segít.
- A Linux parancsoknak saját szintaxisuk van, a Linux nem bocsátja meg a hibákat. Ha hibásan ad ki egy parancsot, akkor nem fog elbukni vagy elrontani semmit, de nem fog működni.
- #!/bin/sh – Shebang-nak hívják. Egy shell szkript tetejére van írva, és átadja az utasítást a /bin/sh programnak.
A shell Scriptről
A shell szkript csak egy egyszerű szöveges fájl „.sh” kiterjesztéssel, és végrehajtási engedéllyel rendelkezik.
A forgatókönyv írásának és végrehajtásának folyamata
- Nyissa meg a terminált.
- A „cd” paranccsal navigáljon arra a helyre, ahol szkriptet szeretne létrehozni.
- Cd (bevitel) [Ez a parancssor a Saját címtárban] jelenik meg.
- érintse meg a hello.sh elemet (itt a szkriptet hello néven neveztük el, ne feledje, hogy a '.sh' kiterjesztés kötelező).
- vi hello.sh (nano hello.sh) [A szkript szerkesztéséhez használhatja kedvenc szerkesztőjét].
- chmod 744 hello.sh (a szkript futtathatóvá tétele).
- sh hello.sh vagy ./hello.sh (a szkript futtatása)
Az első forgatókönyv megírása
#!/bin/bash
My first script
echo "Hello World!"
Mentse el a fenti sorokat egy szöveges fájlba, tegye végrehajthatóvá és futtassa a fent leírtak szerint.
Minta kimenet
Hello World!
A fenti kódban.
#!/bin/bash (is the shebang.)
My first script (is comment, anything following '#' is a comment)
echo “Hello World!” (is the main part of this script)
A második forgatókönyv megírása
Ideje a következő szkriptre lépni. Ez a szkript megmondja az Ön „felhasználónevét”, és felsorolja a futó folyamatokat.
#! /bin/bash
echo "Hello $USER"
echo "Hey i am" $USER "and will be telling you about the current processes"
echo "Running processes List"
ps
Hozzon létre egy fájlt a fenti kódokkal, mentse el bárhova, de „.sh” kiterjesztéssel tegye végrehajthatóvá, és futtassa a termináljáról.
Minta kimenet
Hello tecmint
Hey i am tecmint and will be telling you about the current processes
Running processes List
PID TTY TIME CMD
1111 pts/0 00:00:00 bash
1287 pts/0 00:00:00 sh
1288 pts/0 00:00:00 ps
Jó volt? A szkript írása olyan egyszerű, mint egy ötlet megszerzése és a folyamatban lévő parancsok írása. Vannak bizonyos korlátozások is. A shell-szkriptek kiválóan alkalmasak tömör fájlrendszer-műveletek elvégzésére, valamint a szűrőkben és parancssori eszközökben meglévő funkciók kombinációjának csöveken keresztüli szkriptezésére.
Ha nagyobbak az igényei – akár a funkcionalitás, a robusztusság, a teljesítmény, a hatékonyság stb. terén –, akkor áttérhet a egy teljes értékű nyelv.
Ha már ismeri a C/Perl/Python programozási nyelvet vagy bármely más programozási nyelvet, a szkriptnyelv megtanulása nem lesz túl nehéz.
A harmadik forgatókönyv megírása
Továbblépve ide, írja meg a harmadik és egyben utolsó szkriptünket ehhez a cikkhez. Ez a szkript interaktív szkriptként működik. Miért nem hajtod végre ezt az egyszerű, de interaktív forgatókönyvet, és mondd el nekünk, mit éreztél.
#! /bin/bash
echo "Hey what's Your First Name?";
read a;
echo "welcome Mr./Mrs. $a, would you like to tell us, Your Last Name";
read b;
echo "Thanks Mr./Mrs. $a $b for telling us your name";
echo "*******************"
echo "Mr./Mrs. $b, it's time to say you good bye"
Minta kimenet
Hey what's Your First Name?
Avishek
welcome Mr./Mrs. Avishek, would you like to tell us, Your Last Name
Kumar
Thanks Mr./Mrs. Avishek Kumar for telling us your name
******************************************************
Mr./Mrs. Kumar, it's time to say you good bye
Nos, ez nem a vég. Megpróbáltunk ízelítőt adni a forgatókönyvírásból. Jövőbeni cikkünkben ezt a szkriptnyelvi témát dolgozzuk ki, inkább egy soha véget nem érő szkriptnyelvi témát, hogy tökéletesebbek legyünk. A kommentekben megfogalmazott értékes gondolataidat nagyra értékeljük, lájkolj és oszd meg minket, és segíts a terjesztésben. Addig nyugi, maradjon kapcsolatban, maradjon velünk.
Olvassa el még : 5 shell-szkript a shell-programozás megtanulásához – II. rész