Pet*_*Pan 3 arrays bash dynamic
这是我尝试过的:
n=0
for i in aaa bbb ccc; do
array${i}[$n]=$(date "+%N")
((++n))
done
n=0
for i in aaa bbb ccc; do
echo ${array${i}[$n]}
((++n))
done
Run Code Online (Sandbox Code Playgroud)
有什么想法如何使动态数组名称起作用吗?多谢!
您可以使用间接扩展:
#!/bin/bash
# create the arrays
n=0
for i in aaa bbb ccc; do
let array$i[$n]=$(date "+%N")
((++n))
done
# display what we did
n=0
for i in aaa bbb ccc; do
var=array$i[$n]
echo ${!var}
((++n))
done
Run Code Online (Sandbox Code Playgroud)
请注意,这只会创建数组变量arrayaaa[0]、arraybbb[1]和arrayccc[2],而不是(如您所期望的)arrayaaa[0]、arrayaaa[1]、arrayaaa[2]、arraybbb[0]、arraybbb[1]、arraybbb[2]、arrayccc[0]、arrayccc[1]和arrayccc[2]。
| 归档时间: |
|
| 查看次数: |
12105 次 |
| 最近记录: |