use string as variable name
Sascha Hauer
sha at pengutronix.de
Tue Jan 25 06:16:22 PST 2022
Hi Frank,
On Sun, Jan 23, 2022 at 10:58:36AM +0100, Frank Wunderlich wrote:
> Hi,
>
> is it possible to use a string as variable-name?
>
> example:
>
> i=1
> img_$i=foo
>
> now i have defined $img_1, but how to display it using $i again?
>
> echo ${img_$i}
> echo ${img_${i}}
>
> alternative may be a variable-array, but it seems not possible
>
> img[$i]=bar
> img[1]=bar: No such file or directory
>
> i just want to create a dynamic list and access the items of this list by index
>
> another way may be appending new string with separator to existing string and split afterwards,
> but then i have the index-problem again.
>
> i know barebox shell is limited (but much more mighty than expected for just a bootloader),
> but maybe it is possible :)
Nah, you're kidding, the barebox shell is not limited ;)
#!/bin/sh
list="foo bar baz"
index=$1
i=0
for elem in $list; do
let i=$i+1
if [ "$i" = "$index" ]; then
result="$elem"
fi
done
echo result: $result
Regards,
Sascha
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list