On 06/26/2015 07:59 AM, Pratik Prajapati wrote:
I tried one method and was unable to correct it. Can you give me the
correct method ?

On Fri, Jun 26, 2015 at 11:25 AM, Sven-Göran Bergh
<[email protected]
<mailto:[email protected]>> wrote:

    Hi Patrik

    On 06/26/2015 07:49 AM, Pratik Prajapati wrote:

        Hi,

        I am working on LTP-DDT project (https://github.com/rogerq/ltp-ddt)
        which i cross-compiled for my target and my target uses busybox. But
        running it on my target gives me error as array operation is not
        supported in busybox.

        I have attached script with this mail.

        I am getting error for :

        sh: /opt/ltp/testcases/bin/ddt/common/common.sh: line 305:
        syntax error:
        bad substitution

        I tried this:

        |305: shift
        306: index=0
        307: for  arg;
        308: do
        309:   x[$index]=$arg
        310:   ((index++))
        311: done

I am afraid that the work around is quite ugly. In this case
you may use the evil eval:

index=0
for arg;
do
        eval x${index}=$arg
        eval printf "x%s:\\\t%s\\\n" "${index}" "\$x${index}"
        ((index++))
done

Yes, I know it is ugly and I said so.
Arrays are one of the things I miss the most in ash.

Brgds
/S-G


        |but i got error:|  syntax error: unexpected "(" (expecting "}")

        Also couldn't found any solution on google.

        How to make it work on busybox. Please help.


    Arrays is a bash feature, it is not supported by ash or standard
    shells. So unfortunately the short answer is that it does not work.
    However there are often ways to rework a script to avoid arrays.

    Brgds
    /S-G


        Thanks,

        Pratik



        _______________________________________________
        busybox mailing list
        [email protected] <mailto:[email protected]>
        http://lists.busybox.net/mailman/listinfo/busybox



_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to