我正在尝试访问hive表并将结果转储回文本文件。当我尝试这样做时,我总是被拒绝许可?有什么我想念的吗?
bash-3.00$ 'select * from ATTRIBUTE_DATA_REALTIME LIMIT 10' > test.txt
bash: test.txt: Permission denied
在这种情况下我需要什么许可?或者我的查询错了?
答案 0 :(得分:1)
首先 - 你错过了hive -e
。有了你现在拥有的东西,Bash将寻找一个名为select * from ATTRIBUTE_DATA_REALTIME LIMIT 10
的程序!
但至于权限问题,有两种可能性:
test.txt
已存在,则需要以具有写入文件权限的用户身份运行命令。 (使用ls -l test.txt
查看谁拥有该文件以及该文件的权限。)test.txt
不存在,则需要以有权写入包含文件的目录的用户身份运行命令,即当前目录。 (使用ls -ld .
查看该目录的拥有者以及该目录的权限。)