rilpoint_mw113

Linux:Shell script alapok

A lap korábbi változatát látod, amilyen Admin (vitalap | szerkesztései) 2010. március 28., 19:08-kor történt szerkesztése után volt.

Shell script alapok

  • Készíts shell scripet, mely kiírja a következő szöveget: Hello world!
#!/bin/bash
echo "Hello world!"
  • Készíts programot, mely az A váltózónak értéket ad, majd kiírja azt!
#!/bin/bash
A=12
echo "A=$A"
  • Készíts programot, mely a billentyűzetről bekéri a felhasználó nevét, és személyesen köszönti őt!
#!/bin/bash
echo -n "Add meg a neved: "
read NEV
echo "Üdvözöllek, kedves $NEV"
  • Készíts programot, mely kiírja a mai nap nevének angol rövidítését! Az akuális nap neve a date parancs megfelelő paraméterezésével nyerhető ki.
#!/bin/bash
DATUM=`date '+%a'`
echo "A mai nap neve: $DATUM"
  • Készíts programot, mely az VER változóba beolvassa a /etc/debian_version fájl tartalmát, majd kiírja azt! Ebben a fájlban a Debian/GNU Linux verziószáma található.
#!/bin/bash
VER_FILE="/etc/debian_version"
VER=`cat $VER_FILE`
echo "Az operációs rendszer verziószáma: $VER"
  • Készíts programot, mely a billentyűzetről bekéri egy négyzet oldalának hosszát, majd kiírja annak kerületét és területét!
#!/bin/bash
echo "Négyzet kerületének és területének kiszámítása"
# Bekérjük az oldal hosszát
echo -n "Oldal hossza: "
read OLDAL
# Kiszámítjuk a kerületet és a területet
KER=`expr $OLDAL \* 4`
TER=`expr $OLDAL \* $OLDAL`
# Kiírjuk az eredményt
echo "A $OLDAL oldalú négyzet kerülete $KER, területe $TER."
  • Készíts programot, mely megadja, hogy a rendszergazda ebben a hónapban hányszor jelentkezett be! Írja ki ennek a számnak a kétszeresét is!
#!/bin/bash
FINDTHIS="root"
N=`last | grep ^$FINDTHIS | wc -l`
D=`expr $N \* 2`
echo "Belépések száma: $N, kétszerese: $D"
  • Készíts shell scripet, mely egy hosszabb szöveget ír ki a képernyőre a Here In Document elv alkalmazásával!
#!/bin/bash
cat <<END
Hol nördség van, 
ott nördség van 
nemcsak a gép zúgó zajában,
a tárt wikipédiában,
 
a száz nyitott ablakban,
villámgyors alt-tab-ban,
ott nördség van 
a falban utazó LAN-ban,
 
ahogy az egér füle kattan,
ahogy az ikonod  
mappába vonszolod,
dreggeled, droppolod...
END
  • Készíts programot, mely paramétereit egy konfigurációs fájlból veszi! A NEV és a KOR nevű változókat olvassa be a params.conf fájlból, majd írja ki azok értékét!
#!/bin/bash
. params.conf
echo "Név: $NEV, kora: $KOR év."

A params.conf fájl tartalma:

NEV="Kiss Lajos"
KOR=60
  • 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 neve legyen usersearch!
#!/bin/bash
echo -n "Login név: "
read NEV
FULLNAME=`cat /etc/passwd | grep ^$NEV: | cut -d: -f5`
echo "Teljes név: $FULLNAME"
Skin by RIL Partner