1. 基本语法
使用Hadoop命令的两种方式:
hadoop fs -具体命令
【推荐用这种方式】hdfs dfs -具体命令
:底层还是调用hadoop fs 具体命令
- l两者区别:前者可操作任意文件系统,不仅仅是hdfs文件系统,还能操作本地、谷歌GFS等,使用范围更广;后者只能操作hdfs文件系统。
注意:因为配置了
$HADOOP_HOME
及相关环境变量。所以可以在linux系统的任意地方敲上面的命令。
2. 查看帮助信息
- 查看所有命令:
hadoop fs
- 查看某个命令细节:
hadoop fs -help 具体命令
,如:hadoop fs -help rm
3. 常用命令
3.1 与Linux命令一样的命令
- 打印目录:
hadoop fs -ls /
- 显示目录中文件大小信息:
hadoop fs -du -s -h /jinguo
①-s
列出总大小,不加该参数时会列出文件夹下每个文件大小
②-h
以适当的单位展示 - 创建文件夹:
hadoop fs -mkdir /wcinput
- 删除文件:
hadoop fs -rm -f -r /wcoutput
①-r
表示递归删除子文件
②-f
表示只删除文件,不删除文件夹 - 剪切粘贴文件:
hadoop fs -mv a.sh /tmp
- 复制粘贴:
hadoop fs -cp a.sh /tmp
- 修改权限位:
hadoop fs -chmod 777 /a.txt
- 修改文件拥有者和所属组:
- 只修改拥有者:
hadoop fs -chown hao /a.txt
- 同时修改拥有者和所属组:
hadoop fs -chown hao:root /a.txt
- 只修改拥有者:
- 打印文本内容:
hadoop fs -cat /a.txt
- 打印文本末尾1KB内容:
hadoop fs -tail /a.txt
- 打印变量值:
hadoop fs -echo $PATH
3.2 上传 / 下载 命令
- 本地–>服务器
- 剪切上传:
hadoop fs -moveFromLocal shuguo.txt /sanguo
- 复制上传
hadoop fs -copyFromLocal weiguo.txt /sanguo
hadoop fs -put aa.txt /wcinput
- 剪切上传:
- 服务器–>本地
- 复制下载
hadoop fs -copyToLocal /sanguo/shuguo.txt ./
hadoop fs -get /wcinput/aa.txt a.txt
- 复制下载
3.3 其他
-
追加一个文件到已经存在的文件末尾:
hadoop fs -appendToFile liubei.txt /sanguo/shuguo.txt
: liubei.txt追加到shuguo.txt文件末尾 -
设置HDFS中文件副本数量:
hadoop fs -setrep 10 /jinguo/weiguo.txt
注意:设置/jinguo/weiguo.txt的副本数量为10个副本。但是我们目前集群中只有3台服务器,所以最多只有3个副本,此时 hdfs 会先将 /jinguo/weiguo.txt副本数量设置为10,等将来节点数量如果增加了,就会在新节点中也备份/jinguo/weiguo.txt副本。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/84552.html