grep, sed & spol. - jak vyloupnout z radky text od do
oldfrog na volny.cz
oldfrog na volny.cz
Pondělí Únor 10 19:29:45 CET 2003
>
>
>z textoveho souboru, ktery vypada asi takto
>
>...
>jmeno: Petr
>prijmeni: Novak
>vyska: 165 cm
>...
>
>potrebuju na prikazove radce co nejjednodussim zpusobem (bez Perlu, Pythonu
>atd.)
>postupne vyloupnout 'Petr', 'Novak', '165 cm'.
>
>
Pomoci unixoveho shellu je to asi nejjednoduzsi, viz. prilohy.
OldFrog.
------------- další část ---------------
#!/bin/sh
## Skript pro "parsovani" textu.
## Pouziti: ./parse1 < vstup.txt
##
## Predpokladany format vstup.txt:
## jmeno: Petr
## prijmeni: Novak
## vyska: 165 cm
## cte vstup radek po radku, slova
## na radku jsou oddelena bilym znakem,
## nacte je do promennych A, B, C:
while read A B C
do
echo "Novy radek:"
echo " A=$A"
echo " B=$B"
echo " C=$C"
done
## cte vstup radek po radku, slova
## na radku jsou oddelena bilym znakem,
## nacte je do pole ABC:
#while read -a ABC
#do
# echo "Novy radek:"
# echo " ABC[0]=${ABC[0]}"
# echo " ABC[1]=${ABC[1]}"
# echo " ABC[2]=${ABC[2]}"
#done
## cte vstup radek po radku za konec
## radku povazuje znak "#", slova na
## radku jsou oddelena bilym znakem,
## nacte je do promennych A, B, C:
#while read -d "#" -a ABC
#do
# echo "Novy radek:"
# echo " ABC[0]=${ABC[0]}"
# echo " ABC[1]=${ABC[1]}"
# echo " ABC[2]=${ABC[2]}"
#done
------------- další část ---------------
#!/bin/sh
## Skript pro "parsovani" textu.
## Pouziti: ./parse2 < vstup.txt
##
## Predpokladany format vstup.txt:
## jmeno: Petr
## prijmeni: Novak
## vyska: 165 cm
## cte radek po radku, vynecha prvni
## slovo z radku a zbytek vypise na
## obrazovku
ZPRACUJ_RADEK(){
shift 1;
echo "$*";
}
while read RADEK
do
echo "Novy radek:"
ZPRACUJ_RADEK $RADEK;
done
------------- další část ---------------
jmeno: Petr
prijmeni: Novak
vyska: 165 cm
Další informace o konferenci Linux