2016-02-11 89 views
0

我想创建一个二维数组。例如free -h给我一张表。我想创建与没有awk的二维数组相同的表。我如何用declare -a矩阵来声明它。感谢社区从终端(unix)创建二维数组

+0

欢迎来到Stack Overflow!您能否详细说明我们您的努力,以显示代码的必要部分? – manetsus

+0

我想我必须使用head,tail或sed命令 –

+0

为什么你愿意使用head,tail或sed,但不愿意使用awk?这没什么意义。 –

回答

1

它不支持开箱即用,但你可以模拟它如下面解释的,美中不足的是,当你循环通过你需要每一行传递到另一个阵列

示例数据没有文件名并为这些

browser browserId browserName 
country countryId countryName 
event eventId eventName 

列你的数组声明将

myArray=(
"browser browserId browserName" 
"country countryId countryName" 
"event eventId eventName") 

如果你想创建一个循环来处理每行

for afile in "${myArray[@]}" 
    do  
    aline=($afile) 
    filename=${aline[0]} 
    column1=${aline[1]} 
    column2=${aline[2]} 
done 

线

afile=($afile) 

传递从myArray的至被叫艾琳另一个阵列的每一行。

我已经使用这个和工作。随意问你是否有任何问题