( locsemege | 2013. 05. 31., p – 00:00 )

Ha muszáj a pipe, akkor úgy hozok ki belőle változót, hogy a pipe-on belül stdout-ra küldöm a cuccot, s az egész kócerájt egy helyettesítésként változó értékadásába írom valahogy emígyen:

#!/bin/bash

eval "a=(`ls -l |\
    while read; do
        echo \"'$REPLY' \"
    done`)"
echo "${a[5]}"
exit 0

Tudom, rondácska egy értékadás, ugyanakkor egyből egy tömböt definiál, így sok változót ki lehet így hozni. Valami ilyesmi lesz belőle:

a=('érték0' 'érték1' 'érték2' 'érték3' 'érték4' 'érték5' )

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE