shell - 在 spool 中打印输出,并在不同的变量中使用相同的输出
问题描述
下面我试图打印存储在input.lst
a.poid_id0
应该存储在一个变量中a.Account_obj_id0
应该存储在另一个变量中b.BILL_INFO_ID
应该存储在另一个变量中b.PAYINFO_OBJ_ID0
应该存储在另一个变量中b.poid_id0
应该存储在另一个变量中。
我需要在 while 循环中使用上述这些变量。
SPOOL input.lst
sqlplus -s ${DB_STRING} << EOF
select a.poid_id0,a.Account_obj_id0, b.BILL_INFO_ID,b.PAYINFO_OBJ_ID0,b.poid_id0
from ACCT_IBAN_ASSOCIATION_T a, billinfo_t b
where a.ACCOUNT_OBJ_ID0 = b.ACCOUNT_OBJ_ID0
and b.BILL_INFO_ID !='Account Bill';
SPOOL OFF
EOF
解决方案
您可以尝试以下 col1、col2、col3 等应该是您的变量:
output=$(sqlplus -S ${DB_STRING} << EOF
select a.poid_id0,a.Account_obj_id0, b.BILL_INFO_ID,b.PAYINFO_OBJ_ID0,b.poid_id0
from ACCT_IBAN_ASSOCIATION_T a, billinfo_t b
where a.ACCOUNT_OBJ_ID0 = b.ACCOUNT_OBJ_ID0
and b.BILL_INFO_ID !='Account Bill';
SPOOL OFF
EOF
)
echo -e "$output" | while read col1 col2 col3 (etc..) ; do ... ; done
推荐阅读
- tensorflow - 如何创建自定义 keras 优化器?
- java - Eclipse - 在不关闭浏览器的情况下从控制台终止?
- javascript - 将特定百分比机会添加到某些随机生成的数字范围 0-90 的方法
- javascript - 清理函数?
- authentication - 无需登录即可刷新 Facebook 长寿命令牌
- python - 如何在python中创建由矩阵组成的列表?
- php - laravel8:此集合实例上不存在
- c# - 是否可以为事件处理程序声明全局变量?
- sql-server - 如何在 Azure 管道集成测试中更改 sql server 版本?
- elasticsearch - 如何将嵌套对象中的字段从嵌套对象中移出到弹性索引中的单独对象中