( lx | 2012. 03. 09., p – 00:41 )

???

Pont azt a célt szolgálja az eval set, hogy a megfelelő részek kerüljenek a megfelelő pozícionális paraméterekbe:


$> cat teszt.txt
* 03 07 08 * tovis@localhost "Tamás névnap" "Tamás barátom"
$> cat x.sh
parsethis() {
local ROW=$1
echo "DEBUG1: \$#=$#"
set -f
eval set $ROW
set +f
echo "DEBUG2: \$#=$#"
echo "\$1=<$1>, \$6=<$6>, \$7=<$7> \$8=<$8>"
}

while read ROW; do
parsethis "$ROW"
done < teszt.txt
$> ./x.sh
DEBUG1: $#=1
DEBUG2: $#=8
$1=<*>, $6=<tovis@localhost>, $7=<Tamás névnap> $8=<Tamás barátom>
$>