无法使用终端将本地python文件复制到配置单元

uelo1irk  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(456)

我正在尝试将python文件(用于udf)从本地下载文件夹上载到hive,但没有成功。我用了命令:

scp -P 2222 ~/Downloads/geohash-udf.py root@localhost:/root/;

但是,我收到以下错误消息:

我还尝试通过运行以下命令直接从本地目录添加文件:

hive> add file /Users/Shaolun/Downloads/geohash-udf.py;

但我有个错误:

Query returned non-zero code: 1, cause: /Users/Shaolun/Downloads/geohash-udf.py does not exist.

我还尝试先将文件放入hdfs,然后使用以下命令从hdfs获取文件:

hive> add file hdfs:///user/root/geohash-udf.py;

命令按预期运行。但我不希望这样,因为我希望hive能够从本地windows机器而不是hdfs中获取python文件。
我的python文件的确切本地路径是'c:/users/shaolun/downloads/geohash udf.py',我的操作系统是windows10。我不明白为什么不能将python文件上传到hive中。任何帮助/建议都将不胜感激!

r7xajy2e

r7xajy2e1#

scp 是unix命令而不是 hive 命令。
请从unix终端运行相同的命令,它将工作。
对于第二个问题,您无法从配置单元终端访问windows文件,只能访问中的文件 hdfs .
您可以从unix主机运行以下命令。

hdfs dfs -put <filename> <hdfs_path>

相关问题