1

我有以下 shell 脚本

RETVAL=`sqlplus -silent user/password <<EOF
SET PAGESIZE 9990

SELECT   id, type, count(*) "count" FROM event

EXIT;
EOF`

echo $RETVAL

它输出像

ID 类型计数 ------------- ---------- ------------ 2 11 2 1 4 1 2 10 29 1 1 35 2 1 6 2 18 1 2 2 3 7 行已选择

但我想要像这样的输出

ID              TYPE        count
------------- ---------- -----------
        2         11           2
        1          4           1
        2         10          29
        1          1          35
        2          1           6
        2         18           1
        2          2           3

选择了 7 行。

我试图弄清楚我是否得到了一些换行符,但找不到。

问候,

4

1 回答 1

1

您的变量包含换行符,但您显示它的方式会删除它们。

echo语句替换为:

echo "$RETVAL"

然后外壳不会弄乱换行符。您几乎应该总是引用可以包含需要保留的任何形式的空格的变量。

于 2013-08-04T08:22:31.060 回答