【问题标题】:How to run a program, and then a command to execute within that program all at once如何运行一个程序,然后在该程序中一次执行一个命令
【发布时间】:2016-02-16 23:13:18
【问题描述】:

在 Hadoop 中,有一个名为“beeline”的 SQL CLI,它允许您编写 SQL 并将您的查询分发到您的集群上。

在我连接集群的 linux 机器上,如果我输入“beeline”,则会出现一个新的 beeline shell。从那里我可以通过 jdbc 连接,然后键入如下 SQL 命令:

[me@phe41 ~]$ beeline

Hive version 0.11.0-SNAPSHOT by Apache

beeline>>> !connect jdbc:hive2://localhost:10000 scott tiger org.apache.hive.jdbc.HiveDriver
!connect jdbc:hive2://localhost:10000 scott tiger org.apache.hive.jdbc.HiveDriver

Connecting to jdbc:hive2://localhost:10000
Connected to: Hive (version 0.10.0)
Driver: Hive (version 0.10.0-SNAPSHOT)
Transaction isolation: TRANSACTION_REPEATABLE_READ

0: jdbc:hive2://localhost:10000>>> show tables;
show tables;
+-------------------+
|     tab_name      |
+-------------------+
| primitives        |
| src               |
| src1              |
| src_json          |
| src_sequencefile  |
| src_thrift        |
| srcbucket         |
| srcbucket2        |
| srcpart           |
+-------------------+

我从命令行启动beeline,它是它自己的程序,然后连接到它自己的程序Hive。我怎样才能运行“直线”...“!连接等”...和“显示表格;”全部在初始 shell 的一行中?

【问题讨论】:

  • 使用此处的文档?

标签: linux hadoop


【解决方案1】:

使用here document

beeline << EOF
!connect, etc
show tables
EOF

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-17
    • 1970-01-01
    • 2019-02-17
    • 2014-03-08
    • 2013-05-05
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    相关资源
    最近更新 更多