shell beeline怎么去掉表头只留结果
时间: 2024-10-27 18:14:36 浏览: 41
Beeline 是 Hive 的命令行客户端工具,它允许用户直接通过 SQL 脚本与 Hive 数据库交互。如果你想要从 Beeline 中获取查询结果而不显示列名(表头),你可以使用 `SELECT *` 查询并且加上 `-e` 或者 `--silent` 参数来禁用结果集的打印。
例如,如果你想运行一个查询并只接收结果,你可以这样做:
```bash
beeline -u "jdbc:hive2://your_host:port/your_database" -n your_username -p your_password \
-e "SELECT * FROM your_table;" > output.txt
```
这里 `-e` 后面的 SQL 会直接运行,并将结果定向到 `output.txt` 文件中,不会在终端上显示表头。
如果你想在终端直接查看结果但隐藏表头,可以尝试添加 `-Silent true` 到 Beeline 的连接选项中,但是这个选项可能不是标准选项,具体取决于你的 Beeline 版本。如果可用,命令应该像这样:
```bash
beeline -p your_password -Silent true \
-e "SELECT * FROM your_table;"
```
记住,上述命令可能需要你替换 `your_host`, `port`, `your_database`, `your_username`, 和 `your_password` 为你实际的数据库连接信息。
相关问题
帮我写一个shell脚本 ,beeline连接批量统计hive库名为fdp库下表名模糊匹配db_的表数据量,结果输出位csv文件
好的,以下是一个可以使用beeline连接批量统计hive库名为fdp库下表名模糊匹配db_的表数据量,并将结果输出为csv文件的shell脚本:
```shell
#!/bin/bash
# 设置beeline连接参数
HIVE_HOST=<hive_host>
HIVE_PORT=<hive_port>
HIVE_USER=<hive_user>
HIVE_PASSWORD=<hive_password>
# 设置hive库名和表名关键字
DATABASE=fdp
TABLE_PATTERN=db_
# 连接hive并获取表名列表
TABLES=`beeline -u "jdbc:hive2://$HIVE_HOST:$HIVE_PORT/default;auth=noSasl" -n $HIVE_USER -p $HIVE_PASSWORD -e "use $DATABASE; show tables like '$TABLE_PATTERN*';" | tail -n +4`
# 输出表名和数据量到csv文件
echo "Table Name,Data Size" > table_sizes.csv
for TABLE in $TABLES
do
ROW_COUNT=`beeline -u "jdbc:hive2://$HIVE_HOST:$HIVE_PORT/default;auth=noSasl" -n $HIVE_USER -p $HIVE_PASSWORD -e "use $DATABASE; select count(*) from $TABLE;" | tail -n +4`
echo "$TABLE,$ROW_COUNT" >> table_sizes.csv
done
```
你需要将`<hive_host>`、`<hive_port>`、`<hive_user>`和`<hive_password>`替换成你自己的hive连接参数。然后将以上代码保存到一个名为`table_sizes.sh`的文件中,然后在终端运行`sh table_sizes.sh`即可执行。执行完成后,你将会在当前目录下找到一个名为`table_sizes.csv`的文件,其中包含了每个匹配到的表名和对应的数据量。
beeline -
Beeline 是 Apache Hive 提供的一个命令行工具,用于连接 HiveServer2,并执行 HiveQL 查询语句。Beeline 支持 JDBC 连接,并提供了一些额外的特性,例如多行输入、自动完成、历史命令记录等。
Beeline 的命令行格式为:
```
beeline [-u <jdbc-url>] [-n <username>] [-p <password>] [<connection-properties>]
```
其中,`-u` 参数指定 JDBC 连接 URL,`-n` 参数指定用户名,`-p` 参数指定密码,`<connection-properties>` 参数用于指定其他连接属性,例如 SSL 配置、Kerberos 认证等。
使用 Beeline 连接到 HiveServer2 后,可以执行类似于 SQL 的 HiveQL 查询语句,例如:
```
beeline> SELECT * FROM my_table;
```
Beeline 还提供了一些内置命令,例如 `!connect` 用于连接到其他 JDBC 数据库,`!tables` 用于列出当前数据库中的所有表格等。可以使用 `!help` 命令查看所有内置命令。
需要注意的是,Beeline 连接到 HiveServer2 时需要指定正确的 JDBC URL,并确保 HiveServer2 正在运行。
阅读全文