-e 直接调用hivesql语句 hive -e "select * from test.emp;",-f 调用文件中hivesql语句 vim hivef.sql select * from test.emp; hive -f /home/hadoop/123/hivef.sql > /home/hadoop/123/234/hivef.txt
时间: 2023-12-31 16:05:09 浏览: 34
你可以使用以下命令来直接调用 HiveSQL 语句:
```shell
hive -e "select * from test.emp;"
```
而如果你想调用文件中的 HiveSQL 语句,可以按照以下步骤操作:
1. 使用 Vim 或其他编辑器创建一个名为 `hivef.sql` 的文件,并将需要执行的 HiveSQL 语句写入该文件中,比如:
```sql
select * from test.emp;
```
2. 运行以下命令来执行 HiveSQL 文件并将结果输出到指定文件中:
```shell
hive -f /home/hadoop/123/hivef.sql > /home/hadoop/123/234/hivef.txt
```
这样,Hive 将会执行 `hivef.sql` 文件中的 HiveSQL 语句,并将结果输出到 `/home/hadoop/123/234/hivef.txt` 文件中。
相关问题
-e 直接调用hivesql语句 hive -e "select * from test.emp;" -f 调用文件中hivesql语句 vim hivef.sql select * from test.emp; hive -f /home/hadoop/123/hivef.sql > /home/hadoop/123/234/hivef.txt
您好!对于您的问题,可以使用以下命令来和调用 Hive SQL 语句:
1. 使用e` 参数直接调用 Hive SQL语句:
```
hive -e "select * from test.emp;"
``2. 使用 `-f` 参数调用文件中的 Hive SQL语句。首先, vim 或者其他编辑器创建一个名为 `hivef.sql` 的文件,并将 SQL 语句入其中:
```
vim hivef.sql
```
在 `hivef.sql` 文件中,写入以下内容:
```
select * from test.emp;
```
保存并退出编辑器。然后,使用以下命令调用该文件中的 Hive SQL 语句:
```
hive -f /home/hadoop/123/hivef.sql > /home/hadoop/123/234/hivef.txt
```
该命令将执行 `hivef.sql` 文件中的 SQL 语句,并将输出结果保存到 `/home/hadoop/123/234/hivef.txt` 文件中。
希望能解答您的问题!如果还有其他问题,请随时提问。
同样的hive sql语句,hive-shell可以正常输出数据,shell脚本文件没有输出
可能是因为你的脚本文件中没有设置输出目标或者输出目标设置不正确。在脚本文件中,你可以使用以下方式来设置输出目标:
1. 使用重定向符号 `>` 将输出重定向到一个文件中,例如:
```
hive -e "SELECT * FROM table_name" > output.txt
```
这个命令会将查询结果输出到 `output.txt` 文件中。
2. 在脚本文件中使用 `echo` 命令将输出打印到终端上,例如:
```
result=$(hive -e "SELECT * FROM table_name")
echo "$result"
```
这个命令会将查询结果存储在 `result` 变量中,并通过 `echo` 命令将结果打印到终端上。
另外,你还需要确认一下脚本文件是否有执行权限,可以使用 `chmod +x script.sh` 命令为脚本文件添加执行权限。