a Bash és a Bash Shell a Linux rendszerek fő felügyeleti összetevője. A parancsok a Bash-on futnak a feladatok vagy feladatok elvégzése érdekében. Ezeket a parancsokat lehet tárolni egy fájlt, amely az úgynevezett shell script. A shell parancsfájl egy vagy több parancs futtatására szolgál, csak a shell parancsfájl meghívásával, parancsok ismételt írása nélkül. A shell szkriptek *.SH kiterjesztéssel rendelkeznek a Bash vagy az Sh számára. Ebben az oktatóanyagban megtanuljuk, hogyan kell különböző módon futtatni a shell szkriptfájlokat.
shell parancsfájl vagy Szkriptfájl létrehozása
a shell parancsfájl futtatásának megkezdése előtt létrehozunk egy parancsfájlt. Csak hozzon létre egy szöveges fájlt a*. sh kiterjesztéssel. Ezután tegyen bele néhány shell parancsot. Ebben a példában létrehozzuk a Shell nevű szkriptet systeminfo.sh .
hostnamectlecho "This is a shell script."
a parancsfájl futtathatóvá tétele és futtatása
a parancsfájl futtatásának vagy futtatásának legtöbb módja a parancsfájl futtathatóvá tétele, majd a hívás. A shell fájl alapértelmezés szerint csak egy szöveggel rendelkező fájl. Ez lehet végrehajtható a shell segítségével a chmod parancsot. A következő példában elkészítjük a systeminfo.sh az aktuális felhasználó számára végrehajtható shell szkriptfájl.
chmod u+x systeminfo.sh
ellenőrizhetjük, hogy a shell parancsfájl végrehajtható-e az LS paranccsal, mint alább.
ls -l systeminfo.sh
a kimenet olyan, mint az alábbiakban, ahol a felhasználó rendelkezik az execute engedéllyel, amelyet az x betűvel ábrázolnak.
-rwxrw-r-- 1 ismail ismail 44 Oca 28 04:18 systeminfo.sh
most már közvetlenül futtathatjuk vagy végrehajthatjuk a szkriptfájlt a nevével és elérési útjával. Ha a szkriptfájl az aktuális munkakönyvtárban van, akkor az alábbiak szerint hívható meg.
./systeminfo.sh
Alternatív megoldásként, ha a shell script if egy másik könyvtár, akkor az aktuális munkakönyvtárban megadhatjuk a teljes vagy abszolút elérési utat annak végrehajtásához. Ez a megbízhatóbb módszer, ahol a szkriptfájl minden helyzetben megfelelően végrehajtható.
/home/ismail/systeminfo.sh
futtasson Shell parancsfájlt közvetlenül a Bash paranccsal
minden Bash shell parancsot a bash tolmácson keresztül értelmez és hajt végre. A bash tolmács egy futtatható fájl, amely található / usr/bin / bash . Mi lehet végrehajtani egy shell script fájlt közvetlenül biztosítva azt a bash bináris. Ez a módszer nem igényel, hogy script fájl végrehajtható. A következő példában a shell szkriptfájlt Bash binary vagy command segítségével hajtjuk végre.
bash ./systeminfo.sh
Alternatív megoldásként a shell szkriptfájl teljes elérési útja megadható az alábbiak szerint.
bash /home/ismail/systeminfo.sh
futtassa a Shell parancsfájlt rootként
alapértelmezés szerint a shell parancsfájl az Aktuális felhasználóként kerül végrehajtásra az aktuális felhasználói jogosultságokkal. De bizonyos esetekben előfordulhat, hogy a shell szkriptfájlt root vagy root jogosultságokkal kell futtatnunk. A sudo parancsot a shell szkriptfájl végrehajtása során használhatjuk.
sudo ./systeminfo.sh
a shell parancsfájl abszolút elérési útjával a sudo parancs az alábbiak szerint egyesíthető.
sudo /home/ismail/systeminfo.sh
Shell parancsfájl futtatása GUI-n keresztül (asztali környezet)
Shell parancsfájl fájlok grafikus felhasználói felületen vagy asztali környezetben is futtathatók. De először engedélyezni kell a végrehajtást. Kattintson a jobb gombbal a szkriptfájlra, majd kattintson az alábbi Tulajdonságok elemre.
a Tulajdonságok ablakban keresse meg az engedélyek lapot, és ellenőrizze a konfiguráció végrehajtását. Ez lehetővé teszi a fájl programként történő végrehajtását.
hibakeresés Shell Script futtatása közben
a shell script fájl olyan, mint egy alkalmazás, amely végre különböző parancsokat. A shell szkript hibakereshető a hibák vagy hibák észlelése érdekében. Ezenkívül a shell szkriptfájl hibakereshető, hogy részletes információkat kapjon a shell szkript végrehajtásáról. A-x paramétert a Bash paranccsal együtt használják a shell parancsfájl hibakeresésére.
bash -x ./systeminfo.sh
shell parancsfájl kimenetének mentése fájlba
néhány shell parancsfájl olyan kimenetet hoz létre, amely a szabványos kimenetre vagy terminálra van nyomtatva. Ez a kimenet könnyen átirányítható egy fájlba a > operátor használatával. A következő példában átirányítjuk a “systeminfo.sh” shell script kimenet A “output” nevű fájlba.txt”.
./systeminfo.sh > output.txt