Mi az a Shell Script?
A shell-szkriptek egy sor parancsot Ãrnak egy egyszerű szöveges fájlba, amelyet gyakran Shell Scriptnek neveznek. Ezeket a szkripteket egy shell hajtja végre, amely egy parancssori értelmezÅ. A leggyakoribb kagylók közé tartozik
- Bash (Bourne Again SHell)
- Zsh (Z Shell)
- Hal.
A shell szkriptek az egyszerű egysoros programoktól az összetett programokig terjedhetnek, és sokféle feladat elvégzésére szolgálnak, például fájlkezelésre, rendszeradminisztrációra és az ismétlÅdÅ feladatok automatizálására.
A Shell Scripting elÅnyei:
Automatizálás: A shell-szkriptek lehetÅvé teszik a felhasználók számára, hogy automatizálják az ismétlÅdÅ feladatokat, Ãgy idÅt takarÃtanak meg és csökkentik az emberi hibák esélyét.
Testreszabás: A felhasználók egyedi igényeikre szabott szkripteket hozhatnak létre, amelyek nagyfokú testreszabást biztosÃtanak.
Kötegelt feldolgozás: A shell-szkriptek kiválóan alkalmasak kötegelt feldolgozási feladatok kezelésére, ahol több parancsot kell egymás után végrehajtani.
Rendszeradminisztráció: A shell-parancsfájlokat általában rendszeradminisztrációs feladatokhoz használják, például biztonsági mentésekhez, naplóforgatáshoz és szoftvertelepÃtéshez.
Egyszerű shell-szkript Ãrása:
Hozzunk létre egy alapvetÅ shell-szkriptet, amely üdvözlŠüzenetet nyomtat. Nyisson meg egy szövegszerkesztÅt, és hozzon létre egy greeting.sh nevű fájlt. Adja hozzá a következÅ sorokat:
#!/bin/bash
# This is a simple shell script
echo "Hello, welcome to the world of shell scripting!"
Mentse el a fájlt, és tegye végrehajthatóvá a következŠparancs futtatásával a terminálban:
chmod +x greeting.sh
Most már végrehajthatja a szkriptet:
./greeting.sh
A kimenetnek a következÅnek kell lennie:
Hello, welcome to the world of shell scripting!
Shell-szkriptek futtatása Ubuntu és Linux rendszeren:
Most megvitatjuk, hogyan lehet .sh fájlt futtatni Ubuntuban és Linuxban.
Tegye végrehajthatóvá a szkriptet: MielÅtt egy shell-szkriptet futtatna, gyÅzÅdjön meg arról, hogy az végrehajtható. Használja a chmod parancsot a korábban bemutatott módon.
Navigáljon a Script Directoryhoz: Nyisson meg egy terminált, és a `cd’ paranccsal navigáljon a shell-szkriptet tartalmazó könyvtárhoz.
Futtassa a szkriptet: Futtassa le a szkriptet a
./scriptname.shbeÃrásával a terminálba, a scriptname szó helyére a szkript tényleges nevével.
cd path/to/script
./greeting.sh
- A Bash parancs használata: Ha a szkript
#!/bin/bashkarakterrel kezdÅdik (shebang néven ismert), akkor abashparanccsal is futtathatja.
bash greeting.sh
Mit jelent a $@ a Shell Scriptben?
A shell scriptben a $@ a szkriptnek átadott összes parancssori argumentumot jelöli. Gyakran használják az argumentumok listájára, mint különálló entitásokra. Ha kettÅs idézÅjelben használjuk, mint például a $@, megÅrzi az egyéni argumentumokat, figyelembe véve a szóközöket és a speciális karaktereket.
Ãme egy rövid magyarázat:
$@: A szkriptnek vagy függvénynek átadott összes pozÃcióparamétert (argumentumot) jelöli. Minden argumentumot külön szóként kezelünk.$@: Dupla idézÅjel esetén megÅrzi az argumentumok elválasztását, lehetÅvé téve szóközök vagy speciális karakterek használatát az egyes argumentumokban.
Ãme egy egyszerű példa a szemléltetésre:
#!/bin/bash
# Save this script as example.sh
echo "The total number of arguments is: $#"
echo "The arguments are: $@"
echo "The arguments with double quotes are: \"$@\""
Amikor ezt a szkriptet argumentumokkal futtatja, például:
bash example.sh arg1 "argument 2" arg3
Kiadná:
The total number of arguments is: 3
The arguments are: arg1 argument 2 arg3
The arguments with double quotes are: "arg1" "argument 2" "arg3"
Amint láthatja, a $@ az összes argumentumot jelöli, a $@ pedig megÅrzi az egyes argumentumokat, még akkor is, ha szóközt tartalmaznak.