Friss hírek

03

Megosztás

1. sor

Old meg bash parancsokkal:

01.
Hozz létre egy projekt könyvtárat a home könyvtárádban. Ebben a könyvtárban hozz létre egy dokumentumok alkönyvtárat és egy kepek alkönyvtárat.
mkdir ~/projekt ~/projekt/dokumentumok ~/projekt/kepek

02.
Hozz létre egy fontos.txt nevű fájlt a projekt/dokumentumok könyvtárban és egy kep1.jpg és kep2.jpg fájlt a projekt/kepek könyvtárban.
touch ~/projekt/dokumentumok/fontos.txt
touch ~/projekt/kepek/kep1.jpg ~/projekt/kepek/kep2.jpg

03.
Másold le a fontos.txt fájlt a backup könyvtárba.
cp ~/projekt/dokumentumok/fontos.txt ~/backup/

04.
Másold le a kep1.jpg fájlt a projekt/kepek könyvtárból a projekt/dokumentumok könyvtárba és nevezd át dokumentum.jpg-re.
cp ~/projekt/kepek/kep1.jpg ~/projekt/dokumentumok/dokumentum.jpg

05.
Listázd ki a projekt könyvtár tartalmát.
ls ~/projekt

06.
Listázd ki a projekt könyvtár tartalmát, beleértve a rejtett fájlokat is.
ls -a ~/projekt

07.
Töröld a kep2.jpg fájlt a projekt/kepek könyvtárból.
rm ~/projekt/kepek/kep2.jpg

08.
Töröld az egész projekt könyvtárat.
rm -r ~/projekt

09.
Hozz létre egy osztalyok/matematika könyvtárat a home könyvtáradba.
mkdir -p ~/osztalyok/matematika

10.
Hozz létre egy jegyzetek/2022 könyvtárat, majd a 2022 könyvtárban hozz létre egy jegyzet.txt nevű fájlt.
mkdir -p ~/jegyzetek/2022
touch ~/jegyzetek/2022/jegyzet.txt

2. sor

Old meg bash parancsokkal:

01.
Hozz létre egy új könyvtárat “gyakorlas” néven a home könyvtáradban.
mkdir ~/gyakorlas

02.
Hozz létre egy “szoveg.txt” nevű szöveges fájlt a “gyakorlas” könyvtárban, és írj bele egy tetszőleges szöveget az echo parancs segítségével.
echo “Ez egy példa szöveg.” > ~/gyakorlas/szoveg.txt

03. Bővítsd ki a szoveg.txt fájlt a Nano szerkesztő segítségével a következő sorokkal:

Ej, mi a kő! tyúkanyó, kend
A szobában lakik itt bent?
Lám, csak jó az isten, jót ád,
Hogy fölvitte a kend dolgát!

Itt szaladgál föl és alá,
Még a ládára is fölszáll,
Eszébe jut, kotkodácsol,
S nem verik ki a szobából.

nano szoveg.txt
ctrl+x
yes
enter

04.
Hozz létre egy másolatot a “szoveg.txt” fájlról a “gyakorlas” könyvtárban, és nevezd át “masolat.txt”-re.
cp ~/gyakorlas/szoveg.txt ~/gyakorlas/masolat.txt

05.
Fűzd hozzá a “szoveg.txt” fájl tartalmát a “masolat.txt” fájlhoz.
cat ~/gyakorlas/szoveg.txt >> ~/gyakorlas/masolat.txt

06.
Helyezd át a szoveg.txt-t a projekt könyvtárba és nevezd át dokumentumok.txt-re.
mv ~/gyakorlas/szoveg.txt ~/projekt/dokumentum.txt

07.
Módosítsd a “masolat.txt” fájl jogosultságait úgy, hogy csak a tulajdonos olvashassa és írhasa.
chmod 600 ~/gyakorlas/masolat.txt

08.
Listázd ki a “gyakorlas” könyvtár tartalmát, beleértve a rejtett fájlokat is.
ls -a ~/gyakorlas

09.
Írd ki a “masolat.txt” fájl első 3 sorát a konzolra.
head -n 3 ~/gyakorlas/masolat.txt

10.
Írd ki a “masolat.txt” fájl utolsó 4 sorát a konzolra.
tail -n 4 ~/gyakorlas/masolat.txt

11.
Hozz létre egy eredeti.txt fájlt a home könyvtáradban a következő tartalommal: “Jul 6 06:33:44 user1 ubuntu: dear cj”
echo “Jul 6 06:33:44 user1 ubuntu: dear cj” > eredeti.txt

12.
Készíts az eredeti.txt fájlról egy soft linket soft_link.txt néven.
ln -s eredeti.txt soft_link.txt

13.
Ellenőrizd a linket. Honnan látszik, hogy elkészült a soft link?
ls -l

14.
Készíts az eredeti.txt fájlról egy hard linket hard_link.txt néven.
ln eredeti.txt hard_link.txt

15.
Ellenőrizd a linket. Honnan látszik, hogy elkészült a hard link?
ls -l

3. sor

Old meg bash parancsokkal:

01.
Hozz létre egy “dokumentumok” nevű könyvtárat, majd benne egy “fontos.txt” fájlt, amelynek az első három sorába írd bele a következő adatokat az echo parancs segítségével:

Kovács;Lajos;Baja;6500
Nagy;László;Székesfehérvár;8000
Tamási;Péter;Veszprém;8200

mkdir dokumentumok
echo -e “Kovács;Lajos;Baja;6500\nNagy;László;Székesfehérvár;8000\nTamási;Péter;Veszprém;8200” > dokumentumok/fontos.txt

02.
Készíts egy “projekt” nevű könyvtárat, majd benne egy “adatok.txt” és “kimenet.txt” fájlt! A “kimenet.txt” üres legyen az “adatok.txt” pedig a következőket tartalmazza:

Kovacs Tamas Szeged 6000 06-30-3874656
Szanto Katalatin Szekesfehervar 8000 06-20-2398763
Nagy Lilla Veszprem 8200 06-70-8574923
Toth Tihamer Budapest 1118 06-20-4987327
Vince Iren Balatonalmadi 8220 06-70-3977428
Nagy Zsofi Szeged 6000 06-70-8574923
Zold Peter Ajka 8400 06-20-2345976
Pal Peter Veszprem 8200 06-88-1234567

mkdir projekt
nano projekt/adatok.txt
másolás, beillesztés, mentés
touch projekt/kimenet.txt

03.
Listázd ki a “dokumentumok” könyvtár tartalmát, majd jelenítsd meg az utolsó három sort!

ls -l dokumentumok | tail -n 3

04.
Írasd ki egyszerre a “dokumentumok/fontos.txt” és “projekt/adatok.txt” fájlok tartalmának első négy sorát!

cat dokumentumok/fontos.txt projekt/adatok.txt | head -n 4

05.
Vágd ki a “projekt/adatok.txt” fájl tartalmának második és harmadik karakterét!

cat projekt/adatok.txt | cut -c 2-3

06.
Rendezd sorrendbe az “dokumentumok/fontos.txt” sorait az első mező alapján növekvő sorrendben!

cat dokumentumok/fontos.txt | sort -k 1

07.
Listázd ki az összes .txt fájlt a “projekt” könyvtárban, majd számold meg őket!

ls -1 projekt/*.txt | wc -l

08.
Vágd ki az “dokumentumok/fontos.txt” fájlban található sorok második mezőjét, amelyeket a “;” karakter választ el!

cat dokumentumok/fontos.txt | cut -d’;’ -f2

09.
Hozz létre három fájlt a “projekt” könyvtárban: “file1.txt”, “file2.txt”, “file3.txt”. Minden fájl a következőt tartalmazza:

1. sor: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla ac justo vel nisi vestibulum aliquet.
2. sor: Suspendisse potenti. Fusce eget tincidunt risus, ac vehicula nulla. Quisque auctor justo nec ante ullamcorper, at sodales justo tempor.
3. sor: Integer ac justo vel orci consequat vulputate. In hac habitasse platea dictumst. Proin quis urna vel turpis dictum scelerisque.
4. sor: Etiam at vestibulum velit. Sed vel justo vel ipsum vehicula bibendum. Nulla facilisi.
5. sor: Vivamus fringilla mi vitae augue auctor, in scelerisque libero tristique. Nunc euismod, libero nec varius luctus, erat velit vulputate odio.

nano file1.txt
cp file1.txt file2.txt
cp file1.txt file3.txt

10.
Hozz létre egy “backup” nevű könyvtárat, majd másold át az “projekt” könyvtár összes .txt fájlját!

mkdir backup
cp projekt/*.txt backup/

11.
Keress meg minden .txt fájlt kizárólag a “dokumentumok” könyvtárban.

find dokumentumok -maxdepth 1 -type f -name “*.txt”

12.
Keress meg minden .txt fájlt rekurzívan a “projekt” könyvtárban, és írd ki a nevüket sorban!

find projekt -type f -name “*.txt” -exec ls -1 “{}” \;

13.
Keress meg minden .txt fájlt a “dokumentumok” könyvtárban, majd írd ki az első három sorát mindegyiknek!

find dokumentumok -type f -name “*.txt” -exec head -n 3 “{}” \;

14.
Keress meg minden .txt fájlt a “backup” könyvtárban, majd másold át az összeset a “projekt” könyvtárba .old kiterjesztéssel!

find backup -type f -name “*.txt” -exec cp “{}” projekt/”{}”.old \;

15.
Keress meg minden .jpg fájlt a “~” könyvtárban, ne rekurzívan, amelyek mérete kisebb mint 50 KB!

find ~ -maxdepth 1 -type f -name “*.jpg” -size -50k

4 sor.

Old meg bash szkriptekkel:

1. Készíts egy bash scriptet, amely beolvassa a felhasználó nevét és üdvözli azt egy személyre szabott üzenettel!

#!/bin/bash

echo “Kerem, adja meg a nevet:”
read name
echo “Udvozoljuk, $name!”

2. Írj egy bash scriptet, amely a parancssori argumentumok között megadott két számot összeadja, majd az eredményt kiírja a képernyőre!

#!/bin/bash

sum=$(($1 + $2))
echo “A ket szam osszege: $sum”

3. Hozz létre egy bash scriptet, amely a felhasználótól bekér egy fájlnevet, majd ellenőrzi, hogy a megadott fájl létezik-e a dokumentumok mappában! Ha igen, írja ki “A fájl létezik.”, ha nem, akkor írja ki “A fájl nem létezik.”!

#!/bin/bash

echo “Kérem, adjon meg egy fájlnevet:”
read filename

if [ -e ~/dokumentumok/$filename ]
then
echo “A fájl létezik.”
else
echo “A fájl nem létezik.”
fi

4. Írj egy bash scriptet, amely két számot olvas be a felhasználótól, és meghatározza, hogy melyik a nagyobb, vagy ha egyenlőek, akkor erről tájékoztatja a felhasználót!

#!/bin/bash

echo “Kérem, adjon meg két számot:”
read num1
read num2

if [ “$num1” -gt “$num2” ]
then
echo “$num1 nagyobb, mint $num2.”
elif [ “$num1” -eq “$num2” ]
then
echo “A két szám egyenlő.”
else
echo “$num2 nagyobb, mint $num1.”
fi

5. Írj egy bash scriptet, amely egy megadott fájlt másol egy másik megadott mappába!

#!/bin/bash

echo “Kérem, adja meg a forrásfájl nevét:”
read source_file

echo “Kérem, adja meg a célkönyvtár nevét:”
read destination_dir

cp “$source_file” “$destination_dir”
echo “A fájl másolása sikeres volt.”

6. Írj egy bash scriptet, amely ellenőrzi, hogy egy adott fájl létezik-e, és ha igen, akkor megvizsgálja, hogy az üres-e vagy sem! Ha az adott fájl nem létezik, írja ki a “A fájl nem található.” üzenetet!

#!/bin/bash

echo “Kérem, adjon meg egy fájl nevét:”
read filename

if [ -e “$filename” ]; then
if [ -s “$filename” ]; then
echo “A fájl létezik és nem üres.”
else
echo “A fájl létezik, de üres.”
fi
else
echo “A fájl nem található.”
fi

7. Készíts egy bash scriptet, amely bekéri a felhasználótól egy könyvtár nevét, majd kiírja a könyvtárban található összes fájl és alkönyvtár nevét!

#!/bin/bash

echo “Kérem, adjon meg egy könyvtár nevét:”
read directory

echo “A könyvtár tartalma:”
ls -a $directory

8. Készíts egy bash scriptet, amely bekéri a felhasználótól két számot, majd összeadja azokat és az eredményt kiírja egy fájlba!

#!/bin/bash

echo “Kérem, adjon meg két számot:”
read num1
read num2

sum=$(($num1 + $num2))
echo “Az összeg: $sum” > sum.txt
echo “Az összeg ki lett írva a sum.txt fájlba.”

9. Írj egy bash scriptet, amely eldönti, hogy a megadott szám páros vagy páratlan!

#!/bin/bash

echo “Kérem, adjon meg egy számot:”
read num

if [ $(($num % 2)) -eq 0 ]; then
echo “$num páros szám.”
else
echo “$num páratlan szám.”
fi

10. Írj egy bash scriptet, amely a felhasználótól bekér egy számot, majd megállapítja, hogy az adott szám pozitív, negatív vagy nulla!

#!/bin/bash

echo “Kérem, adjon meg egy számot:”
read num

if [ $num -gt 0 ]; then
echo “A szám pozitív.”
elif [ $num -lt 0 ]; then
echo “A szám negatív.”
else
echo “A szám nulla.”
fi

5. sor

Old meg bash szkriptekkel:
1. Készíts egy bash scriptet, amely összeszámolja a kiindulási könyvtárban lévő összes .txt fájl sorait, amelyet egy változóban tárol el. Írja ki végül az összes sor értékét.
#!/bin/bash
total_lines=`cat *.txt | wc -l` # total_lines=$(cat *.txt | wc -l)
echo “Az összes .txt fájlban összesen $total_lines sor található.”
2. Írj egy bash szkriptet, ami kiírja a 0-tól 10 a számokat kettesével.
#!/bin/bash
for i in {0..10..2}
do
    echo $i
done
3. Írj egy bash szkriptet, ami egy tömbben tárolja néhány kedvenc gyümölcsödet, majd kiírja az összes elemet külön sorba.
#!/bin/bash
fruits=(“alma” “korte” “szolo” “narancs”)
for fruit in “${fruits[@]}”
do
    echo $fruit
done
4. Írj egy bash szkriptet, amely az “Ellenseges kemhalozat felkutatasa es semlegesítése” szövegben minden “e” karaktert “X” karakterre cserél. Írassa ki az eredményt.
#!/bin/bash
modified_text=$(echo “Ellenseges kemhalozat felkutatasa es semlegesítese” | sed ‘s/e/X/g’)
echo “Módosított szöveg: $modified_text”
5. Írj egy bash szkriptet, amely argomentumban megkap egy fájlnevet. Először ellenőrizze, hogy a megadott fájl létezik-e. Ezt követően írassa ki a kapott fájl utolsó előtti sorát.
#!/bin/bash
if [ ! -f “$1” ]
then
    echo “Hiba: A megadott fájl nem létezik.”
    exit 1
fi
second_last_line=$(tail -n 2 “$1” | head -n 1)
echo “A(z) ‘$1’ fájl utolsó előtti sora: $second_last_line”
6. Írjon egy bash szkriptet, amely bekér három darab számot. A számok közül keresse meg a legnagyobbat, majd írassa ki.
#!/bin/bash
echo “Kérem az első számot:”
read szam1
echo “Kérem a második számot:”
read szam2
echo “Kérem a harmadik számot:”
read szam3
if [ $szam1 -gt $szam2 ] && [ $szam1 -gt $szam3 ]; then
    echo “$szam1 a legnagyobb.”
elif [ $szam2 -gt $szam1 ] && [ $szam2 -gt $szam3 ]; then
    echo “$szam2 a legnagyobb.”
elif [ $szam3 -gt $szam1 ] && [ $szam3 -gt $szam2 ]; then
    echo “$szam3 a legnagyobb.”
else
    echo “Egyenlőség van.”
fi
7. Írjon olyan bash scriptet, amely a standard inputról bekér egy számot, ezt a számot hozzáfűzi az aktuális mappában lévő azon fájlokhoz, amelyek neve tartalmazza az “vizsga” szót.
#!/bin/bash
echo “Adjon meg egy szamot”
read number
for file in ./*vizsga*
do
echo ${number} >> ${file}
done
8. Írjon olyan bash scriptet, amely az aktuális könyvtárban létrehoz egy alma.txt nevű fájlt, amelynek a tartalma az aktuális mappában található fájlok száma.
#!/bin/bash
find . -maxdepth 1 -type f | wc -l > alma.txt
9. Írjon egy bash szkriptet, amely egy bejelentkezési funkciót valósít meg. Ha felhasználói névként az admin2, jelszóként pedig a secret szerepel, akkor írja ki a program, hogy a bejelentkezés sikeres, ellenkező esetben azt, hogy sikertelen a bejelentkezés.
#!/bin/bash
# Type your Login Information
read -p ‘Felhasznaloi nev: ‘ username
read -sp ‘Jelszo: ‘ password
if (( $username == “admin2” && $password == “secret” ))
then
     echo -e “\nSikeres bejelentkezés”
else
     echo -e “\nSikertelen bejelentkezés”
fi
10. Írjon egy bash szkriptet, amely egy egyszerű játékot valósít meg. A játék, kérjen be egy számot és ha az a szám a 10 vagy az 20, akkor írja ki, hogy megnyerted a játékot, különben pedig azt, hogy elvesztetted a játékot.
#!/bin/bash
echo “Gondoltam egy számra! Próbáld meg kitalálni!”
read szam
if [ “$szam” -eq 10 ] || [ “$szam” -eq 20 ]
then
  echo “Gratulalok, nyertel!”
else
  echo “Sajnalom, nem nyertel!”
fi
11. Írjon egy bash szkriptet, amely paraméterként nevsor.txt fájl tartalmát soronként kiíratja.
#!/bin/bash
filename=$1
while read line
do
echo $line
done < $filename
12. Írjon olyan bash scriptet, amelynek tetszőleges számú paramétert megadhatunk. Írja ki a megadott paramétereket egymás alá, mindegyiket új sorba!
#!/bin/bash
for input in “$@”; do
    echo “$input”
done
13. Írjon olyan bash scriptet, amely paraméterként egy fájlt vár. Ha a fájl nem létezik, írja ki, hogy: “Nem megvalosithato.”, majd lépjen ki. Ha létezik a fájl, akkor Írja ki a felhasználónak a fájl sorainak és szavainak a szorzatát!
#!/bin/bash
if [ -f $1 ]
then
        line=$(cat $1 | wc -l)
        echo “Sorok: $line”
        word=$(cat $1 | wc -w)
        echo “Szavak: $word”
        echo “Összesen: $((line * word))”
else
        echo “Nem megvalosithato.”
fi
14. Írj egy bash szkriptet, ami átmásolja az összes .txt kiterjesztésű fájlt egy új mappába, amelynek neve “txt_files”. A szkript először ellenőrizze, hogy létezik-e az adott mappa, ha nem, hakkor hozza létre.
#!/bin/bash
if [ ! -d “txt_files” ]
then
    mkdir txt_files
fi
cp *.txt txt_files/
15. Írj egy bash szkriptet, amely kiírja az aktuális könyvtárban található legkisebb és legnagyobb méretű fájl nevét.
#!/bin/bash
# Legkisebb méretű fájl neve
smallest_file=$(ls -l | sort -n -k5 | head -n 2 | tail -n 1 | cut -d ‘ ‘ -f 9)
# Legnagyobb méretű fájl neve
largest_file=$(ls -l | sort -nr -k5 | head -n 2 | tail -n 1 | cut -d ‘ ‘ -f 9)
echo “A legkisebb méretű fájl neve: $smallest_file”
echo “A legnagyobb méretű fájl neve: $largest_file”

6. sor

Old meg reguláris kifejezésekkel:

1. Adott egy gyumolcs.txt szöveges állomány, amelyben minden sor egy szó vagy mondat. Írj egy reguláris kifejezést, amely csak azokat a sorokat adja vissza, amelyek “apple”, “banana” vagy “orange” szavakat tartalmaznak!

Példa adatok
I like apples.
I hate tomatoes.
Bananas are my favorite fruit.
Oranges are rich in vitamin C.
I eat an apple a day.
I don’t like bananas.

grep -E “(apple|banana|orange)” gyumolcs.txt

2. Adott egy nevek.txt szöveges fájl, amely tartalmazza az emberek nevét és életkorát, minden sorban egy személy. Írj egy reguláris kifejezést, amely csak azokat a sorokat adja vissza, amelyekben az életkor 18 és 25 év között van!

Példa adatok:
Anna, 20
Bela, 30
Csilla, 22
David, 16
Eszter, 27

grep -E “(1[89]|2[0-5])” nevek.txt

3. Adott egy emailcimek.txt szöveges állomány, amelyben minden sor egy e-mail címet tartalmaz. Írj egy reguláris kifejezést, amely csak azokat a sorokat adja vissza, amelyek gmail.com vagy yahoo.com e-mail címeket tartalmaznak!

Példa adatok:
johndoe@gmail.com
janedoe@yahoo.com
mike.smith@outlook.com
sarahjones@gmail.com
peterparker@yahoo.com
bobdoe@gmail.com

grep -E “(@gmail\.com|@yahoo\.com)$” emailcimek.txt

4. Adott egy ipcimek.txt szöveges állomány, amelyben minden sor egy IP-címet tartalmaz. Írj egy reguláris kifejezést, amely csak azokat a sorokat adja vissza, amelyek 192.168.x.x vagy 10.x.x.x IP-címeket tartalmaznak!

Példa adatok:
192.168.1.1
192.168.2.1
10.0.0.1
10.0.0.2
192.168.1.10
172.16.0.1

grep -E “^(192\.168\.|10\.)” ipcimek.txt

5. Adott egy evszamok.txt szöveges állomány, amelyben minden sor egy dátumot tartalmaz a következő formátumban: “éééé-hh-nn”. Írj egy reguláris kifejezést, amely csak azokat a sorokat adja vissza, amelyek 2022. év április hónapban történt eseményekre utalnak!

Példa adatok:
2022-03-29
2022-04-01
2022-04-12
2022-05-15
2022-04-30
2021-04-15

grep -E ‘^2022-04-‘ evszamok.txt

6. Bash script. Adott egy adatok.txt szöveges állomány, amelyben minden sor egy e-mail cím. Írj egy reguláris kifejezést, amely csak azokat a sorokat adja vissza, amelyek domain névként “example.com”-ot használnak, és az e-mail cím felhasználói neve legalább 5 karakter hosszú!

Példa adatok:
john@example.com
jane@example.com
joe@example.com
mary@example.com
jack@example.org
alice@example.com

grep -E “^.{5,}@example\.com$” adatok.txt

7. Adott egy fontos.txt szöveges állomány, amelyben minden sor egy URL címet tartalmaz. Írj egy reguláris kifejezést, amely csak azokat a sorokat adja vissza, amelyek “http://” vagy “https://” protokollal kezdődnek, és “.com” vagy “.hu” végződéssel rendelkeznek!

Példa adatok:
http://example.com
https://openai.org
https://stackoverflow.com
http://google.hu
https://github.com

grep -E ‘^(http:\/\/|https:\/\/).*\.(com|hu)$’ fontos.txt

8. Írj egy bash scriptet a grep és reguláris kifejezések használatával, amely beolvassa az allomasok.txt fájl tartalmát egy ciklus segítségével, majd egymás alá írassa ki a városok neveit.

Példa adatok:
Budapest, Moricz Zsigmond korter: 5 busz, 7 villamos, 2 metro all meg.
Szeged, Dom ter: 1 villamos, 3 busz, 2 trolibusz indul el.
Debrecen, Nagyerdei korut: 4 busz, 1 villamos, 1 metro halad el.
Pecs, Szechenyi ter: 2 trolibusz, 6 busz érkezik.
Gyor, Baross Gabor ter: 3 trolibusz, 4 villamos, 1 busz all meg.
Szekesfehervar, Bory-var: 2 busz, 1 trolibusz, 1 villamos indul el

#!/bin/bash

while read line
do
city=$(echo “$line” | grep -oE “^[A-Z][a-z]+”)
echo “$city”
done < allomasok.txt


#!/bin/bash

while read line
do
city=$(echo “$line” | grep -oE “^[^,]+”)
echo “$city”
done < allomasok.txt

9. Írj egy bash scriptet a grep és reguláris kifejezések használatával, amely beolvassa az allomasok.txt fájl tartalmát egy ciklus segítségével, majd egymás alá írassa ki a vilamosok számát.

Példakimenet:
7 villamos
4 villamos
2 villamos

Példa adatok:
Budapest, Moricz Zsigmond korter: 5 busz, 7 villamos, 2 metro all meg.
Szeged, Dom ter: 1 villamos, 3 busz, 2 trolibusz indul el.
Debrecen, Nagyerdei korut: 4 busz, 1 villamos, 1 metro halad el.
Pecs, Szechenyi ter: 2 trolibusz, 6 busz érkezik.
Gyor, Baross Gabor ter: 3 trolibusz, 4 villamos, 1 busz all meg.
Szekesfehervar, Bory-var: 2 busz, 1 trolibusz, 1 villamos indul el

#!/bin/bash

# beolvassuk a fájlt és kiírjuk a villamosok számát
while read line
do
tram_count=$(echo $line | grep -oE “[0-9]+ villamos”)
if [ -n “$tram_count” ]
then
echo $tram_count
fi
done < allomasok.txt

10. Írj egy bash scriptet a grep és reguláris kifejezések használatával, amely beolvassa az allomasok.txt fájl tartalmát egy ciklus segítségével, majd összeadja a buszok számát, amelyet végül kiírat.

Példa adatok:
Budapest, Moricz Zsigmond korter: 5 busz, 7 villamos, 2 metro all meg.
Szeged, Dom ter: 1 villamos, 3 busz, 2 trolibusz indul el.
Debrecen, Nagyerdei korut: 4 busz, 1 villamos, 1 metro halad el.
Pecs, Szechenyi ter: 2 trolibusz, 6 busz érkezik.
Gyor, Baross Gabor ter: 3 trolibusz, 4 villamos, 1 busz all meg.
Szekesfehervar, Bory-var: 2 busz, 1 trolibusz, 1 villamos indul el

#!/bin/bash

bus_count=0

while read line
do
bus_number=$(echo “$line” | grep -oE “\b[0-9]+ busz\b” | grep -oE “[0-9]+”)
if [ -n “$bus_number” ]
then
((bus_count+=bus_number))
fi
done < allomasok.txt

echo “A varosokban levo osszes busz szama: $bus_count”