在shell脚本中将查询结果存储在数组中

时间:2015-09-12 17:51:23

标签: shell unix

我想在unix脚本中将查询的行结果存储在数组中。

我试过了:

array=`sqlplus -s $DB <<eof
select customer_id from customer;
eof`;

当我试图打印它时,它会显示我的结果:

echo ${array[0]};

CUSTOMER_ID ----------- 1 2 51 52 101 102 103 104 105 106 108 11行选择。

但我希望通过排除column_name和“11行选择”句子将每一行存储为元素。

先谢谢。

1 个答案:

答案 0 :(得分:0)

要创建数组,您需要在BASH中使用以下语法:

is_verified

或:

array=($(command))

对于你的sqlplus命令:

declare -a array=($(command))

然后将其打印为:

array=($(sqlplus -s "$DB"<<eof
SET PAGESIZE 0;
select customer_id from customer;
eof))

请注意,它受白色空间上所有shell扩展的影响。