有两件事,首先这是我在这个论坛上的第一个问题,如果形成各种各样,我会道歉.其次我没有写过那么多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应该可以正常工作.