A Bash, vagy Bourne-again shell, az egyik legnépszerűbb parancsértelmező és parancsnyelv a Linux rendszerekben. A Bash szkriptek lehetővé teszik a felhasználók és rendszergazdák számára a folyamatok automatizálását, jelentős időt megtakarítva a manuális munkák során. Érdemes megjegyezni, hogy a Bash elérhető Windows és macOS rendszereken is.
Mi a Bash szkriptelés célja?
A Bash egy parancssori értelmező, amely egy szöveges ablakban fut, ahol a felhasználók kezelhetik és végrehajthatják a shell parancsokat. A Bash szkriptelés során egy sor parancsot írunk, amelyeket egy Linux rendszer hajt végre. Az ilyen utasításokat tartalmazó fájlt Bash szkriptnek nevezzük.
Egyszerűen fogalmazva, a Bash értelmező olvassa a szkriptet, és végrehajtja a benne lévő parancsokat. Például egy Linux felhasználó több száz parancsot hajthat végre egyetlen kattintással, ahelyett, hogy egyenként adná meg őket. Emiatt a Bash szkriptelés ideális a termelékenység növelésére, automatizálásra és az ismétlődő feladatok kiküszöbölésére.
Az alábbiakban 25 népszerű Bash szkript példát mutatunk be, beleértve a változók kezelését és különböző értékek kiíratását. Továbbá foglalkozunk függvényekkel, tömbökkel, ciklusokkal és sok mással.
1. Hello World
A "Hello World" a legegyszerűbb Bash szkript, amely egy új változót hoz létre, majd kiírja annak tartalmát.
#!/bin/bash
# Létrehoz egy új változót "Hello World" értékkel
learningbash="Hello World"
echo $learningbash
2. Echo parancs
Az echo
parancs szöveg vagy változók kiíratására használható.
#!/bin/bash
learningbash="Hello World"
echo $learningbash
# Kiíratás dupla idézőjelekkel
echo "$learningbash"
# Kiíratás szimpla idézőjelekkel
echo '$learningbash'
3. Sleep parancs
A sleep
parancs lehetővé teszi, hogy meghatározott időt várjunk.
#!/bin/bash
echo "Első üzenet"
sleep 5
echo "Második üzenet 5 másodperc késéssel"
4. Wait parancs
A wait
parancs megvárja, hogy a háttérben futó folyamatok befejeződjenek.
#!/bin/bash
(sleep 3; echo "Első folyamat befejeződött") &
(sleep 5; echo "Második folyamat befejeződött") &
wait
echo "Minden folyamat befejeződött"
5. Feltételes kifejezések
Használjuk az if
feltételt kifejezések vizsgálatára.
#!/bin/bash
number=10
if [ $number -gt 5 ]; then
echo "A szám nagyobb, mint 5."
else
echo "A szám nem nagyobb, mint 5."
fi
6. For ciklus
A for
ciklus használatával többször is végrehajthatunk parancsokat.
#!/bin/bash
for i in 1 2 3 4 5
do
echo "Szám: $i"
done
7. While ciklus
A while
ciklus addig fut, amíg a megadott feltétel igaz.
#!/bin/bash
count=1
while [ $count -le 5 ]
do
echo "Számláló: $count"
((count++))
done
8. Változók és paraméterek
Változók és script paraméterek kezelése.
#!/bin/bash
name=$1
age=$2
echo "Név: $name, Kor: $age"
9. Fájl létezésének ellenőrzése
Ellenőrizzük, hogy egy adott fájl létezik-e.
#!/bin/bash
file="test.txt"
if [ -f "$file" ]; then
echo "A fájl létezik."
else
echo "A fájl nem található."
fi
10. Függvények
Függvények használata Bash szkriptekben.
#!/bin/bash
function greet {
echo "Szia, $1!"
}
greet "Világ"
11. Tömbök kezelése
Tömbök deklarálása és elemek bejárása.
#!/bin/bash
tomb=("alma" "banán" "cseresznye")
for gyumolcs in "${tomb[@]}"
do
echo "$gyumolcs"
done
12. Szövegfájlok olvasása
Fájlok soronkénti olvasása.
#!/bin/bash
while IFS= read -r sor
do
echo "$sor"
done < "fajl.txt"
13. Szövegkeresés grep-pel
Szöveg keresése egy fájlban.
#!/bin/bash
grep "keresett_szo" fajl.txt
14. Adatok rendezése
Számok vagy szavak rendezése.
#!/bin/bash
sort szoveg.txt
15. Időzítés
Kód időzítése at
parancsal.
#!/bin/bash
echo "echo 'Hello!'" | at now + 1 minute
16. Pingelj szervereket
Ping parancs automatikus futtatása.
#!/bin/bash
szerverek=("google.com" "yahoo.com")
for szerver in "${szerverek[@]}"
do
ping -c 4 $szerver
done
17. Fájl másolása
Automatikus fájl másolás.
#!/bin/bash
cp forras.txt cel.txt
18. Fájlok törlése
Fájlok törlése biztonságosan.
#!/bin/bash
rm -i torlendo.txt
19. Cron feladatok kezelése
Időzített feladatok hozzáadása a crontab-hoz.
#!/bin/bash
echo "0 5 * * * /home/felhasznalo/script.sh" | crontab -
20. Folyamatok kezelése
Futó folyamatok megölése.
#!/bin/bash
killall firefox
21. Log fájlok kezelése
Log fájlok ellenőrzése.
#!/bin/bash
tail -f /var/log/syslog
22. Háttérben futtatás
Parancsok futtatása a háttérben.
#!/bin/bash
sleep 10 &
echo "Fut a háttérben!"
23. Memóriahasználat figyelése
Rendszer erőforrásainak figyelése.
#!/bin/bash
free -h
24. Felhasználókezelés
Felhasználó hozzáadása a rendszeren.
#!/bin/bash
sudo adduser ujfelhasznalo
25. Fájlok összefűzése
Több fájl tartalmának egyesítése.
#!/bin/bash
cat fajl1.txt fajl2.txt > egyesitett.txt
Hozzászólások(0)