HDFS的根本操作(创建目录或文件、查看目录或文件、上传和拷贝文件到HDFS上 ...

打印 上一主题 下一主题

主题 668|帖子 668|积分 2004


前言

主要涉及HDFS shell操作命令,包罗创建目录或文件、查看目录或文件、上传和拷贝文件到HDFS上、追加数据到HDFS上、从HDFS上下载文件到Linux本地、合并HDFS上多个文件并下载、删除HDFS上的文件、查看各种命令的用法等。

一、HDFS的相关命令

1、在HDFS创建目录

  1. #hdfs dfs -mkdir /要创建的目录
  2. hdfs dfs -mkdir /data
  3. # -p表示创建多级目录,父目录和子目录一起
  4. hdfs dfs -mkdir -p /usr/opt/data
复制代码
2、查看当前目录

  1. #ls 目录名xxx:列出目录名下的可见文件
  2. #查看data目录下的所有可见内容
  3. hdfs dfs -ls /usr/opt/data
  4. #查看hdfs根目录下的内容
  5. hdfs dfs -ls /
  6. #查看本地Linux系统根目录下的内容
  7. hdfs dfs -ls file:/// #相当于 ls /
  8. #查看hdfs上目录
  9. hdfs dfs -ls hdfs://hadoop100:8020/
  10. #显示文件size
  11. hdfs dfs -ls -h /data
复制代码
3、查看目录与子目录

  1. #查看根目录下的目录以及目录下的子目录
  2. hdfs dfs -ls -R/
复制代码
4、查看文件的内容

  1. #-cat命令:将文件内容显示出来(适合小文件)
  2. hdfs dfs -cat /usr/opt/data/a.txt
  3. #-haed命令:查看文件前1KB的内容
  4. hdfs dfs -head /usr/opt/data/a.txt
  5. #-tail命令:查看文件最后1KB的内容
  6. hdfs dfs -tail /usr/opt/data/a.txt
  7. #-tail -f命令:可以动态显示文件中追加的内容
  8. #在Linux系统中
  9. tail -f 1.txt
  10. #hdfs
  11. hdfs dfs -tail -f /usr/opt/data/a.txt
复制代码
5、创建文件

  1. #本地创建文件 touch
  2. touch a.txt b.txt c.txt
  3. #创建不存在的文件,连续创建多个空文件,用空格隔开
复制代码
6、上传和拷贝文件

  1. #-put命令:从本地文件系统拷贝到HDFS,其中/xxx/xxx/为hdfs中的路径
  2. hdfs dfs -put a.txt /usr/opt/data
  3. #-copyFromLocal命令:从本地文件系统拷贝到HDFS,效果与-put命令等同
  4. hdfs dfs -copyFromLocal b.txt /usr/opt/data
  5. #-moveFromLocal命令:从本地文件系统剪切到HDFS,命令执行完后本地文件就没有了
  6. hdfs dfs -moveFromLocal c.txt /usr/opt/data
复制代码
7、追加数据到HDFS文件中

  1. #-appendToFile命令:将所有给定本地文件的内容追加到hdfs文件,hdf文件不存在,则创建该文件
  2. hdfs dfs -appendToFile d.txt /usr/opt/data/a.txt
复制代码
8、下载文件到Linux本地系统

  1. #-get命令:获取文件
  2. #将hdfs上的a.txt文件,下载到本地Linux系统的root目录下
  3. hdfs dfs -get /usr/opt/data/a.txt /root/
复制代码
9、合并HDFS上多个小文件,并下载到本地

  1. #-getmerge命令:将hdfs中的文件合并到本地文件系统的单个文件
  2. #将hdfs上data目录下的文件,合并,并下载到Linux系统的指定目录下
  3. hdfs dfs -getmerge /usr/opt/data/ /opt/merge
  4. #-getmerge -nl命令:在每个文件末尾添加换行符
  5. #-getmerge -skip-empty-file命令:跳过空文件进行合并
复制代码
10、删除HDFS上的指定目录下的文件

  1. #删除HDFS上usr/opt/data/目录下的a.txt文件
  2. #-rm命令:删除文件,-r:目录/子目录下所有内容
  3. hdfs dfs -rm -r /usr/opt/data/a.txt
复制代码
11、删除HDFS上的指定目录

  1. #删除HDFS上/usr/opt/data目录的data目录
  2. hdfs dfs -rm -r /usr/opt/data
复制代码
12、查看命令的详细用法

  1. #-help命令:输出rm命令参数
  2. hdfs dfs -help rm
复制代码
13、查看HDFS磁盘空间

  1. #-df -h命令:显示文件系统的容量,可用空间和已用空间
  2. hdfs dfs -df -h /
复制代码
14、查看HDFS文件使用的空间量

  1. #-du -s命令:表示显示指定路径文件长度的汇总摘要,不是单个文件的摘要
  2. hdfs dfs -du -s
  3. #-du -h命令:人性化的显示文件大小
  4. hdfs dfs -du -s -h /usr/opt/data
复制代码
15、HDFS数据移动操作

  1. #-mv命令:移动文件到指定文件夹下,并且重命名文件的名称
  2. hdfs dfs -mv /usr/opt/data/a.txt /tmp/aaa.txt
复制代码
16、修改HDFS文件副本个数

  1. #-setrep -R:修改文件夹下及其所有
  2. #-setrep -w:客户端是否等待副本修改完毕
  3. hdfs dfs -settrep 2 /usr/opt/data/a.txt
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

杀鸡焉用牛刀

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表