我有一个hadoop运行在我的本地主机。我试图在我的本地主机上设置和安装hive。当我在终端输入hive时,出现以下错误
/ade:[ashsshar_bda_latest_2] [ashsshar@slc01nwj tmp2]$ hive
/usr/lib/hive/bin/hive: line 179:条件二进制操作符
/usr/lib/hive/bin/hive:第179行:语法错误"= ~"
/usr/lib/hive/bin/hive: line 179: ' if [["$HADOOP_VERSION"= ~美元hadoop_version_re]];然后'
为了知道hive的版本,我给出了hive-version,得到了以下结果:
ade:[ashsshar_bda_latest_2] [ashsshar@slc01nwj hive]$ hive -version
/usr/lib/hive/bin/hive: line 179:条件二进制操作符
/usr/lib/hive/bin/hive:第179行:语法错误
=~' /usr/lib/hive/bin/hive: line 179:
if [["$HADOOP_VERSION"= ~hadoop_version_re]]美元;然后'
我的hadoop工作良好,并显示适当的目录Hadoop fs -ls/找到2个项目
drwxrwxrwt - HDFS supergroup 0 2013-04-05 11:57/tmp
drwxrwxr-x - HDFS hadoop 0 2013-04-04 10:49/user
似乎你把hive代码从Windows复制到Unix,或者反之亦然,事情就搞砸了。
你可以从Hive tar下载新的代码,然后在你想安装的同一个系统中解压缩它吗?
我在使用bash版本2.05.8时遇到了同样的问题。我发现使用更新版本的bash(3.2.25)可以解决这个问题。
进入hadoop文件夹下hive文件夹的bin文件夹
cd /usr/lib/hive/bin hive
尝试将hive保存在主目录
不要为hive做bashrc的东西,直接cd到hive文件夹,然后使用bash/hive命令。
确保在/user/hive目录下有hive/warehouse目录
我用这个解决了:
export HIVE_HOME=<where did you installed hive> [1]
export PATH=$HIVE_HOME/bin:$PATH
例如[1]:/opt/apache-hive-2.1.0-bin