是否可以在bash中使用$array =()?

前端之家收集整理的这篇文章主要介绍了是否可以在bash中使用$array =()?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有两件事,首先这是我在这个论坛上的第一个问题,如果形成各种各样,我会道歉.其次我没有写过那么多bash脚本,而且我生成的脚本之间往往需要相当长的时间.

那就是说,这是我的问题.

是否可以在bash中执行类似的操作(Clear array $array contains):
$阵列=()

基本上这就是我想做的.我有一个带有数组变量名的变量:

array1=()  
array2=()  
arrayList="array1 array2"  


# In a function far far away
for array in $arrayList
do  
    eval arr=("\"\${$array[@]\"")  

    for index in ${!arr[@]}
    do
        echo "${arr[$index]}"
    done
    # Here is the big "?",I like to clear the array that $array refers to.
    $array=()  
done

我的数组包含包含“”(空格)的字符串,这就是我使用eval语句的原因.不确定它是否需要,但至少它是有效的.脚本或多或少都在工作,因为我也想要它,但我需要清除$arrayList中的数组,而不是在某处硬编码,即使这很容易.

提前致谢.

可能最简单的事情就是取消它们.在大多数情况下,未设置的变量将与空数组相同,并且取消设置$array应该可以正常工作.

猜你在找的Bash相关文章