BASH (Bourne Again Shell) While ciklus, reguláris kifejezés. Lehet? Ha igen, hogyan?
Sziasztok! Elég kezdő vagyok BASH programozásban, de érdekel a téma!
A kérdésem az lenne hogy, while ciklusnál lehet-e egyáltalán reguláris kifejezést megadni feltételnek? Ha igen, hogyan?
próbáltam így
read nev
while [ $nev = [0-9] ]
do
echo "Hiba! Nem név!"
echo "Próbáld újra!"
read $nev
done
De sajna nem jött össze! Ezenkívül próbáltam egy csomó "variációt" while [ $nev = [0-9]* ] [ $nev =[0-9] ] [ $nev = ([0-9]) ] [[ $nev = [0-9] ]]
De semmi :(
Várom a szakikat :)
Ja, elnézést elfelejtettem a cél-t leírni...
Azt szeretném hogy ha a 'nev' változó számot tartalmaz, akkor ahogy a do-done között lévő sorokból is kiderül, kérdezze újra a nevet és csak akkor lépjen tovább ha szám NÉLKÜLI értéket adnak a 'nev'-nek
és így tovább (pl első betű NAGY betű legyen) csak már az elején megakadtam :(
Köszönöm a válaszokat!
Benko Tom írnál egy példát?? Így nem nagyon értem...
megköszönném :)
read nev
ez ugye azt jelenti hogy a user-től kéri a nevet!
na most az emberke azt is beírhatja hogy: "45262"
És hát ez nem név...
Azt szeretném ha ilyenkor újra kérdezné a nevet, és ezt egészen addig amíg nem ad megy egy normális nevet. pl Nagy Kázmér :)
Az X telepítésekor van ilyen:
for package in $(grep '^#' xlib-7.6.1.wget) do
<utasítások>
done 2>&1 xlib-build.log
Itt a package a változó, amit belül hivatkozni lehet, a listát pedig a grep segítségével állítom elő. De lehet például egy parancs kimenete is, csak azt előtte le kell védeni.
Hm. Így elég a grep is.
while 'echo <változó> | grep [0-9]' do
read <változó>
done
A változót az elején állítsd be valamilyen számértékre. Ez addig fog futni, amíg szerepel a <változó>-ban számjegy, azaz nem "értelmes szöveg".
Köszi :)
Az awk-t (szintaxis) próbáltam kiguglizni, de nem megy, az angol távol áll tőlem... :)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!