【Hadoop—05】HDFS的Shell相关操作

导读:本篇文章讲解 【Hadoop—05】HDFS的Shell相关操作,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1. 基本语法

使用Hadoop命令的两种方式:

  1. hadoop fs -具体命令【推荐用这种方式】
  2. hdfs dfs -具体命令:底层还是调用hadoop fs 具体命令
  • l两者区别:前者可操作任意文件系统,不仅仅是hdfs文件系统,还能操作本地、谷歌GFS等,使用范围更广;后者只能操作hdfs文件系统。

注意:因为配置了$HADOOP_HOME及相关环境变量。所以可以在linux系统的任意地方敲上面的命令。

2. 查看帮助信息

  1. 查看所有命令:hadoop fs
  2. 查看某个命令细节:hadoop fs -help 具体命令,如:hadoop fs -help rm

3. 常用命令

3.1 与Linux命令一样的命令

  1. 打印目录:hadoop fs -ls /
  2. 显示目录中文件大小信息:hadoop fs -du -s -h /jinguo
    -s列出总大小,不加该参数时会列出文件夹下每个文件大小
    -h以适当的单位展示
  3. 创建文件夹:hadoop fs -mkdir /wcinput
  4. 删除文件:hadoop fs -rm -f -r /wcoutput
    -r表示递归删除子文件
    -f表示只删除文件,不删除文件夹
  5. 剪切粘贴文件:hadoop fs -mv a.sh /tmp
  6. 复制粘贴:hadoop fs -cp a.sh /tmp
  7. 修改权限位:hadoop fs -chmod 777 /a.txt
  8. 修改文件拥有者和所属组:
    1. 只修改拥有者:hadoop fs -chown hao /a.txt
    2. 同时修改拥有者和所属组:hadoop fs -chown hao:root /a.txt
  9. 打印文本内容:hadoop fs -cat /a.txt
  10. 打印文本末尾1KB内容:hadoop fs -tail /a.txt
  11. 打印变量值:hadoop fs -echo $PATH

3.2 上传 / 下载 命令

  1. 本地–>服务器
    1. 剪切上传:hadoop fs -moveFromLocal shuguo.txt /sanguo
    2. 复制上传
      1. hadoop fs -copyFromLocal weiguo.txt /sanguo
      2. hadoop fs -put aa.txt /wcinput
  2. 服务器–>本地
    1. 复制下载
      1. hadoop fs -copyToLocal /sanguo/shuguo.txt ./
      2. 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

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!