Portál AbcLinuxu, 13. listopadu 2025 19:35
#! /bin/sh
var=0
while [ $var -lt 3 ]
do
var=$(expr $var + 1)
echo -n "."
done
echo
echo $var
smyčka proběhne 3x, po skončení má $var hodnotu 3
#! /bin/sh
var=0
echo -e "1\n2\n3" | while read v
do
var=${var}$v
echo $var
done
echo
echo $var
smyčka prolítne taky 3x, vidím jak průběžne roste řetězec $var, ale po skončení má zase hodnotu "0". Jak to udělat, aby byl globální, aby se změny ve smyčce projevily i venku?
cat "$file" | grep "něco" | while read vdík :)
cat "$file" | grep "něco" > soubor
while read v
do
var=${var}$v
echo $var
done < soubor
rm soubor
workaround, dík za nasměrování :)
while read; do ...; done < <(grep regexp soubor)
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.