我有这个bash脚本,需要从中检查hbase表是否存在,并相应地打印消息。下面是我试过的。
doesTableExist=$(echo -e "exists '$base_table_name' | hbase shell")
if [ $? -eq 0 ]
then
echo [BYOA_HIVE_INGEST] [INFO] "Table already exists"
else
echo [BYOA_HIVE_INGEST] [ERROR] "Table does not exist"
fi
下面是我如何运行脚本。
sh test.sh $base_table_name = test
但这表明表一直存在,不管它是否存在。我做错什么了?任何帮助都将不胜感激。
1条答案
按热度按时间jjjwad0x1#
想法是对的,你将变量值传递给脚本的方式是错误的,应该是,
设置一个或多个变量,然后运行命令的一般语法如下
如果您的返回码在所有情况下都不正确,您可以直接在命令输出上进行搜索,例如,
与
-q
旗和stderr
重定向到NULL
,如果找到字符串,则返回grep
应该满足if-clause
.