oktatas:linux:ksh
Tartalomjegyzék
Ksh
- Szerző: Sallai András
- Copyright © 2018, Sallai András
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
Bevezetés
A ksh másként Korn Shell. A ksh csomaggal telepíthető, és a ksh paranccal indítható. A KornShell David Korn munkája a Bell laboratóriumban, amit az 1980 évek elején írt. Az első fejlesztés a Bourne Shell alapján történt.
Kivitel
Kivitelhez használjuk a print utasítást:
print hello
print 35
print "hello"
Escape szekvenciák
print \"
print \\
print \'
print "a\tb"
print "a\nb"
Escape szekvenciák | |
---|---|
Escape szekvencia | Leírás |
\\ | vissza-perjel megjelenítése |
\" | idézőjel megjelenítése |
\' | apósztróf megjelenítése |
\t | tabulátor írása |
\n | sortörés írása |
Változók
#!/bin/ksh szam=7 echo $szam
#!/bin/ksh szam=7 echo ${szam}
Az alábbi példában idézőjelbe tettük a változót:
szam=7 echo "$szam"
Ebben az esetben a változó értéke behelyettesítődik.
A következő példában a változót idézőjel helyett aposztrófok közé tettük:
szam=7 echo '$szam'
Ebben a formában a változó nem helyettesítődik be, annak neve íródik be „$” karakterrel együtt.
Egy rendszerváltozó megjelenítése:
echo $PWD
echo ${PWD}
Formázott kimenet
print -f '%d\n' 3+4
Bevitel
print -f "Szám: " read szam
Szelekció
#!/bin/ksh set szam = 2 if [ szam -gt 5 ] then print "nagyobb 5-nél" else print "kisebb mint 5" fi
#!/bin/ksh print -f "Igen vagy nem vagy kilép (q): " read valasz case $valasz in igen|Igen|i) echo Azt mondta igen ;; no) echo Nemet mondott ;; q*|Q*|k*|K*) exit ;; *) echo Ez az alapértelmezett válasz. echo Nem értem miért nem sikerült echo értelmes választ adni ;; esac
Iteráció
#!/bin/ksh szam=1 while [[ $szam -ne 0 ]] do print -f "Szám: " read szam done
#!/bin/ksh for szam in 1 2 3 4 5 do echo $szam done
#!/bin/ksh szam=-1 until [[ szam -eq 0 ]] do print -f "Szám: " read szam done
Tömb
#!/bin/ksh set -A SZINEK "piros" "kék" "zöld" print ${SZINEK[0]} print ${SZINEK[1]} print ${SZINEK[2]}
Irodalom
oktatas/linux/ksh.txt · Utolsó módosítás: 2023/08/20 23:19 szerkesztette: admin