3

如何在 bash 脚本中判断 ingres 数据库是否包含特定表?

我想我想要这样的东西:

sql $db << ENDSQL | grep 'TRUE' > /dev/null
select 'TRUE' from iitables where table_name like '$tablename%'
\p\g
ENDSQL
result=$?

但这总是返回1(未找到)。一个字面的'mytable%'作品,所以我认为这是我引用的东西(或没有它)。

打印我的\pSQL 语句,即使 $tablename 在单引号内,它也会被扩展,所以不是这样。

任何建议表示赞赏。

4

1 回答 1

0

这里的文档语法非常挑剔,请尝试使用这里的语句(同样混乱):

sql $db <<< "select 'TRUE' from iitables where table_name like '$tablename%'
\p\g" | grep 'TRUE' > /dev/null
result=$?

注意 <<< 和双引号的位置。

于 2015-05-22T14:45:21.697 回答