0

我有array1,array2和一个功能。

我正在尝试for j=0 to ARRAY_SIZE循环获取数据array2[j],将其传递给函数,然后返回的输出将其存储在array1[j].

以下是我正在处理的代码部分:

exec 3>&1
${ppart_block_fstype[$i]}=_ppart_block_fstype < <(
    for i in $(eval echo {0..$ARRAY_END})
    do
        if [[ ppart_block_alloc[$i] -eq "ALLOC" ]]
        then
            printf "%s\n" "${ppart_block_num[$i]}" >&3
        fi
    done)
exec 3>&-

_ppart_block_fstype是我之前定义的函数,将返回我将存储在数组中的输出ppart_block_fstype。上述函数的问题是使用了一些“重型工具”,因此实际上不可能在每个循环周期中调用它。

!是一个很好的起点,但我被困在如何使$i子shell可见,而且我也不确定我是否< <( )*以正确的方式调用。

4

0 回答 0