rilpoint_mw113

Linux:Elágazások

(Változatok közti eltérés)
(Új oldal, tartalma: „=Elágazások= * Készíts programot, mely egy futásidőben bekért számról eldönti, hogy nagyobb-e, mint 5! <code lang="bash"> #!/bin/bash echo -n "Add meg a vizsgá…”)
a (Elágazások)
 
(6 közbeeső változat nincs mutatva)
1. sor: 1. sor:
=Elágazások=
=Elágazások=
-
 
+
<kivonat>if, case, &&, ||</kivonat>
-
* Készíts programot, mely egy futásidőben bekért számról eldönti, hogy nagyobb-e, mint 5!
+
* Készíts programot, mely egy futásidőben bekért számról eldönti, hogy nagyobb-e, mint 5! <megoldas>
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
12. sor: 12. sor:
fi
fi
</code>
</code>
-
 
+
</megoldas>
-
* Készítsünk olyan programot, amely bekér két számot, és kiírja a nagyobbikat a képernyőre. Ha a két szám egyenlő, azt is kijelzi.
+
* Készítsünk olyan programot, amely bekér két számot, és kiírja a nagyobbikat a képernyőre. Ha a két szám egyenlő, azt is kijelzi. <megoldas>
-
 
+
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
32. sor: 31. sor:
fi
fi
</code>
</code>
-
 
+
</megoldas>
-
* Egészítsük ki az előző feladatot azzal, hogy a futás során történt eseményekről részletes naplóbejegyzést készítünk a "~/naplo.log" file-ba oly módon, hogy minden futás önálló tartalmat generáljon, felülírva a korábbi naplózási eredményeket.
+
* Egészítsük ki az előző feladatot azzal, hogy a futás során történt eseményekről részletes naplóbejegyzést készítünk a "~/naplo.log" file-ba oly módon, hogy minden futás önálló tartalmat generáljon, felülírva a korábbi naplózási eredményeket. <megoldas>
-
 
+
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
58. sor: 56. sor:
fi
fi
echo "Naplózás vége." >> ~/naplo.log
echo "Naplózás vége." >> ~/naplo.log
-
 
</code>
</code>
-
 
+
</megoldas>
-
* Módosítsuk a naplózási stratégiát, hogy ugyanabba a file-ba növekményesen naplózódjanak az eredmények. Ekkor a futás elején írjuk bele a napófileba az aktuális dátumot és időt, majd a futási log bejegyzéseket.
+
* Módosítsuk a naplózási stratégiát, hogy ugyanabba a file-ba növekményesen naplózódjanak az eredmények. Ekkor a futás elején írjuk bele a napófileba az aktuális dátumot és időt, majd a futási log bejegyzéseket. <megoldas>
-
 
+
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
88. sor: 84. sor:
echo "Naplózás vége." >> ~/naplo.log
echo "Naplózás vége." >> ~/naplo.log
echo "-----------------------------------------" >> ~/naplo.log
echo "-----------------------------------------" >> ~/naplo.log
-
 
</code>
</code>
-
 
+
</megoldas>
-
* Oldjuk meg, hogy a script induláskor ellenőrízze le, hogy a naplófile hossza meghaladja-e a 1 megabyte-ot. Amennyiben igen, úgy a naplófile-ról készítsen másolatot naplo.old néven, majd hozzon létre egy üres naplófilet, és folytassa a futást.
+
* Oldjuk meg, hogy a script induláskor ellenőrizze le, hogy a naplófile hossza meghaladja-e a 1 megabyte-ot. Amennyiben igen, úgy a naplófile-ról készítsen másolatot naplo.old néven, majd hozzon létre egy üres naplófilet, és folytassa a futást. <megoldas>
-
 
+
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
# Készítette: Magyar Péter & Kis Balázs
# Készítette: Magyar Péter & Kis Balázs
-
 
MERET=`ls -l ~/naplo.log | cut -d" " -f5`
MERET=`ls -l ~/naplo.log | cut -d" " -f5`
if [ "$MERET" -gt 1024 ] ; then
if [ "$MERET" -gt 1024 ] ; then
123. sor: 116. sor:
echo "Naplózás vége." >> ~/naplo.log
echo "Naplózás vége." >> ~/naplo.log
echo "-----------------------------------------" >> ~/naplo.log
echo "-----------------------------------------" >> ~/naplo.log
-
 
</code>
</code>
-
 
+
</megoldas>
-
* Készíts programot, mely megjeleníti a ''~/testfile'' fájl tartalmát. Ha a fájl nem létezik, akkor létrehozza azt, és beleírja a programot futtató felhasználó nevét (ezt a shell a $USER változóban teszi elérhetővé).
+
* Készíts programot, mely megjeleníti a ''~/testfile'' fájl tartalmát. Ha a fájl nem létezik, akkor létrehozza azt, és beleírja a programot futtató felhasználó nevét (ezt a shell a $USER változóban teszi elérhetővé). <megoldas>
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
-
TESTFILE="/tmp/testfile.txt"
+
TESTFILE=~/testfile.txt
if [ -f $TESTFILE ]; then
if [ -f $TESTFILE ]; then
   echo "A $TESTFILE már létezik, a tartalma a következő:"
   echo "A $TESTFILE már létezik, a tartalma a következő:"
138. sor: 130. sor:
fi
fi
</code>
</code>
-
 
+
</megoldas>
-
* Készíts programot, mely bekéri egy hét napjának sorszámát, és kiírja az ahhoz tartozó nap nevét!
+
* Készíts programot, mely bekéri egy hét napjának sorszámát, és kiírja az ahhoz tartozó nap nevét! <megoldas>
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
155. sor: 147. sor:
esac
esac
</code>
</code>
-
 
+
</megoldas>
-
* Készíts programot, mely bekéri egy téglalap oldalainak nagyságát, és kiírja annak területét. A programnak ellenőriznie kell, hogy a megadott oldal hosszak nagyobbak-e 0-nál.
+
* Készíts programot, mely bekéri egy téglalap oldalainak nagyságát, és kiírja annak területét. A programnak ellenőriznie kell, hogy a megadott oldal hosszak nagyobbak-e 0-nál. <megoldas>
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
171. sor: 163. sor:
fi
fi
</code>
</code>
-
 
+
</megoldas>
-
* Készíts programot, mely ellenőrzi, hogy azt a root felhasználó futtatja-e, ha nem, akkor adjon hibaüzenetet!
+
* Készíts programot, mely ellenőrzi, hogy azt a root felhasználó futtatja-e, ha nem, akkor adjon hibaüzenetet! <megoldas>
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
181. sor: 173. sor:
echo "Ön rendszergazda."
echo "Ön rendszergazda."
</code>
</code>
-
 
+
* Készíts programot, mely az aktuális idő alapján kiírja, hogy mi a napszaknak megfelelően köszönés! <megoldas>
-
* Készíts programot, mely az aktuális idő alapján kiírja, hogy mi a napszaknak megfelelően köszönés!
+
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
198. sor: 189. sor:
echo "[$ORA óra van]: Jó $N kívánok."
echo "[$ORA óra van]: Jó $N kívánok."
</code>
</code>
-
 
+
</megoldas>
-
* Készíts programot, mely bekéri egy felhasználó login nevét, és a ''/etc/passwd'' file-ból kikeresi annak teljes nevét! A program ellenőrizze, hogy a felhasználó valóban adott-e keresendő nevet, és adjon értelmes választ akkor is, ha a keresett felhasználó nincs a rendszerben!
+
* Készíts programot, mely bekéri egy felhasználó login nevét, és a ''/etc/passwd'' file-ból kikeresi annak teljes nevét! A program ellenőrizze, hogy a felhasználó valóban adott-e keresendő nevet, és adjon értelmes választ akkor is, ha a keresett felhasználó nincs a rendszerben! <megoldas>
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
215. sor: 206. sor:
fi
fi
</code>
</code>
-
 
+
</megoldas>
=== Hibakezelés ===
=== Hibakezelés ===
-
 
+
<kivonat>$?</kivonat>
-
* Készíts programot, mely létrehozza a ''/tmp/testDir'' nevű könyvtárat! Az esetleges hibaüzenetek ne jelenjenek meg, de ha a könyvtár létrehozása sikertelen, akkor írjunk ki saját hibaüzenetet!
+
* Készíts programot, mely létrehozza a ''/tmp/testDir'' nevű könyvtárat! Az esetleges hibaüzenetek ne jelenjenek meg, de ha a könyvtár létrehozása sikertelen, akkor írjunk ki saját hibaüzenetet! <megoldas>
<code lang="bash">
<code lang="bash">
#!/bin/bash
#!/bin/bash
229. sor: 220. sor:
fi
fi
</code>
</code>
 +
</megoldas>

A lap jelenlegi, 2022. május 14., 13:43-kori változata

Elágazások

Kivonat: if, case, &&, ||
  • Készíts programot, mely egy futásidőben bekért számról eldönti, hogy nagyobb-e, mint 5!
  • Készítsünk olyan programot, amely bekér két számot, és kiírja a nagyobbikat a képernyőre. Ha a két szám egyenlő, azt is kijelzi.
  • Egészítsük ki az előző feladatot azzal, hogy a futás során történt eseményekről részletes naplóbejegyzést készítünk a "~/naplo.log" file-ba oly módon, hogy minden futás önálló tartalmat generáljon, felülírva a korábbi naplózási eredményeket.
  • Módosítsuk a naplózási stratégiát, hogy ugyanabba a file-ba növekményesen naplózódjanak az eredmények. Ekkor a futás elején írjuk bele a napófileba az aktuális dátumot és időt, majd a futási log bejegyzéseket.
  • Oldjuk meg, hogy a script induláskor ellenőrizze le, hogy a naplófile hossza meghaladja-e a 1 megabyte-ot. Amennyiben igen, úgy a naplófile-ról készítsen másolatot naplo.old néven, majd hozzon létre egy üres naplófilet, és folytassa a futást.
  • Készíts programot, mely megjeleníti a ~/testfile fájl tartalmát. Ha a fájl nem létezik, akkor létrehozza azt, és beleírja a programot futtató felhasználó nevét (ezt a shell a $USER változóban teszi elérhetővé).
  • Készíts programot, mely bekéri egy hét napjának sorszámát, és kiírja az ahhoz tartozó nap nevét!
  • Készíts programot, mely bekéri egy téglalap oldalainak nagyságát, és kiírja annak területét. A programnak ellenőriznie kell, hogy a megadott oldal hosszak nagyobbak-e 0-nál.
  • Készíts programot, mely ellenőrzi, hogy azt a root felhasználó futtatja-e, ha nem, akkor adjon hibaüzenetet!
  • Készíts programot, mely bekéri egy felhasználó login nevét, és a /etc/passwd file-ból kikeresi annak teljes nevét! A program ellenőrizze, hogy a felhasználó valóban adott-e keresendő nevet, és adjon értelmes választ akkor is, ha a keresett felhasználó nincs a rendszerben!

Hibakezelés

Kivonat: $?
  • Készíts programot, mely létrehozza a /tmp/testDir nevű könyvtárat! Az esetleges hibaüzenetek ne jelenjenek meg, de ha a könyvtár létrehozása sikertelen, akkor írjunk ki saját hibaüzenetet!
Skin by RIL Partner