[linux] BASH postupne nacitanie suboru do premennej
Matej Pivoluska
pivoluska na matfyz.cz
Čtvrtek Červen 12 21:09:25 CEST 2003
Dňa Št 12. Jún 2003 20:48 Andrej Hosna napísal(a):
> > > IFS='
> > > '
> > > for i in `cat subor`; do
> > > echo $i;
> > > done
> > >
> > > riadky sa nacitavaju do premennej $i
> >
> > Ano, aj tak sa da, ale treba dat pozor na to, no tu treba dat pozor na
> > to, ze ak je subor dostatocne velky (>64kB tusim), zahlti BASHU buffer
> > (lebo sa najprv ho cely bash nacita, ked vyhodnoti `cat subor` a az potom
> > ho zacne prechadzat pomocou for cyklu. Pri rieseni cez while read
> > premenna taketo problemy nie su.
>
> Ano to je sice mozne ... ale skus pomocout while read spocitat kolko ma ten
> subor riadkov napriklad.
Ako sa to da spravit lepsie cez for cyklus ako cez while?
pocet=0
while read riadok; do
pocet=$((pocet+1))
done <subor;
alebo
pocet=`wc -l subor`
mP
Další informace o konferenci linux