【发布时间】:2017-07-05 01:23:32
【问题描述】:
我们需要在 HDFS 位置,在 HDFS 文件夹之间建立文件副本。我们目前在 shell 脚本循环中使用了 curl 命令,如下所示。
/usr/bin/curl -v --negotiate -u : -X PUT "<hnode>:<port>/webhdfs/v1/busy/rg/stg/"$1"/"$table"/"$table"_"$3".dsv?op=RENAME&destination=/busy/rg/data/"$1"/"$table"/"$table"_$date1.dsv"
然而,这实现了文件移动。我们需要建立一个文件副本,以便将文件保存在原始暂存位置。
想知道有没有对应的curl操作? op=RENAME&destination 而不是 Rename,还有什么可以用的?
【问题讨论】:
-
有什么原因你不能使用
hdfs dfs -cp? -
感谢您的回复。是的,当您在 hdfs 框内时,这有效。但我的要求是从外部 unix 框连接,自动 kerberos 登录到 hdfs,然后在 hdfs 中移动文件,因此 curl。
-
提示一下,elinks(根据我的经验)将使用您的 kerberos 票证。