WebHDFS REST API (使用curl)

最后更新于:2022-04-02 04:02:47

[TOC] > [参考](https://hadoop.apache.org/docs/r3.1.0/hadoop-project-dist/hadoop-hdfs/WebHDFS.html) ## curl操作webhdfs ### 创建并写入文件 需要分两步 1. `curl -i -X PUT "http://:/webhdfs/v1/?op=CREATE [&overwrite=][&blocksize=][&replication=] [&permission=][&buffersize=][&noredirect=]"` 2. `curl -i -X PUT -T "http://:/webhdfs/v1/?op=CREATE..."` eg: 1. `curl -i -X PUT "http://192.168.0.110:5007/0webhdfs/v1/input/index.html?op=CREATE&overwrite=false&blocksize=1048576` 2. `curl -i -X PUT -T index.html "http://192.168.0.110:50070/webhdfs/v1/input/index.html?op=CREATE&blocksize=1048576"` ### 在一个文件内追加内容 `curl -i -X POST "http://:/webhdfs/v1/?op=APPEND[&buffersize=]"` `curl -i -X POST -T "http://:/webhdfs/v1/?op=APPEND..."` 注意该条命令获得的是DataNode的信息。 ### 打开并读取一个文件 `curl -i -L "http://:/webhdfs/v1/?op=OPEN[&offset=][&length=][&buffersize=]"` eq: `http://192.168.0.110:50070/webhdfs/v1/input/hadoop-im_user-datanode-node-3.log?op=open` ### 创建一个目录 `curl -i -X PUT "http://:/?op=MKDIRS[&permission=]"` eq: `curl -i -X PUT "http://192.168.0.110:50070/webhdfs/v1/input2?op=MKDIRS"` ### 重名命文件、文件夹 `curl -i -X PUT ":/webhdfs/v1/?op=RENAME&destination="` ### 删除文件/文件夹 `curl -i -X DELETE "http://:/webhdfs/v1/?op=DELETE [&recursive=]"` ### 文件/ 文件夹的状态信息 `curl -i “http://:/webhdfs/v1/?op=GETFILESTATUS"` ### 目录列表 `curl -i "http://:/webhdfs/v1/?op=LISTSTATUS"` ### 获取目录的上下文环境汇总信息 `curl -i "http://:/webhdfs/v1/?op=GETCONTENTSUMMARY"` ### 获取Check Sum File `curl -i "http://:/webhdfs/v1/?op=GETFILECHECKSUM"` ### 获取Home 目录 `curl -i "http://:/webhdfs/v1/?op=GETHOMEDIRECTORY"` ### 设置权限 `curl -i -X PUT "http://:/webhdfs/v1/?op=SETPERMISSION [&permission=]"` ### 设置所有者 `curl -i -X PUT "http://:/webhdfs/v1/?op=SETOWNER [&owner=][&group=]"` ### 设置备份 `curl -i -X PUT "http://:/webhdfs/v1/?op=SETREPLICATION [&replication=]“"`
';