暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

这应该是全网最不全的hdfs常用命令介绍文章

闵栋 2022-12-05
846

0、hdfs帮助命令


    hadoop fs -help

    hdfs dfs -help


    1、文件路径(目录)增删改查操作

    1.1 查看根目录文件夹情况


      hadoop fs -ls    -----查看根目录文件信息 
      或者
      hdfs dfs -ls -----查看根目录文件信息


      1.2 创建文件夹


        hdfs dfs -mkdir dir              -----创建文件夹 dir
        hdfs dfs -mkdir - dir -----创建多级文件夹 dir
        示例:
        hdfs dfs -mkdir input -----创建文件夹 input
        hdfs dfs -mkdir output -----创建文件夹 output
        hdfs dfs -mkdir -p home/nps1900 -----创建多级文件夹 home/nps1900


        1.3 删除文件夹


          hdfs dfs -rmdir  dir          -----删除文件夹dir
          示例:
          hdfs dfs -rmdir input -----删除文件夹/input
          hdfs dfs -rmdir output -----删除文件夹/output
          hdfs dfs -rmdir home/nps1900-----删除文件夹/home/nps1900
          hdfs dfs -rm -r home -----递归删除文件夹/home (移动到回收站)
          hdfs dfs -rm -r input -----删除文件夹input (移动到回收站)
          返回信息如下:
          22/12/03 21:57:50 INFO fs.TrashPolicyDefault: Moved: 'hdfs://nameser
          vice1/input' to trash at: hdfs://nameservice1/user/root/.Trash/Current/input1670075870833


          1.4 查看文件目录信息


            查看目录文件信息 
            hdfs dfs -ls dir -----查看dir目录文件信息
            hdfs dfs -ls -R dir
            示例:
            hdfs dfs -ls home -----查看/home目录文件信息
            hdfs dfs -ls home/nps1900-----查看/home/nps1900目录文件信息
            hdfs dfs -ls hbase -----查看/hbase目录文件信息


              hdfs dfs -ls -R dir        -----递归查看dir目录文件信息
              示例:
              hdfs dfs -ls -R hbase/data-----递归查看/hbase/data目录文件信息
              (展现所有层级文件夹或文件信息)


              1.5 重命名文件夹


                hadoop fs -mv oldname newname
                示例:
                hdfs dfs -mv output input
                备注:Rename is not in hadoop, but you can move,hadoop fs -mv oldname newname



                2、本地文件和hdfs交互操作


                2.1 上传文件、文件夹到hdfs上

                #文件上传、拷贝(复制)、移动(剪切)

                  #文件上传、拷贝(复制)、移动(剪切)
                  hdfs dfs -put 本地路径/文件名 hdfs路径
                  【注释】:本地文件上传到指定hdfs路径下(本地文件还在,上传)
                  hdfs dfs -copyFromLocal 本地路径/文件名 hdfs路径/文件名1
                  【注释】:本地文件复制到指定hdfs路径下,重命名为文件名1(本地文件还在,复制)
                  hdfs dfs -moveFromLocal 本地路径/文件名 hdfs路径/文件名2
                  【注释】:本地文件移动到指定hdfs路径下,重命名为文件名2(本地文件移动走了,剪切)
                  示例:
                  hdfs dfs -put opt/software/xsync /input
                  hdfs dfs -copyFromLocal /opt/software/xsync /input/xsync1
                  hdfs dfs -moveFromLocal /opt/software/xsync /input/xsync2
                  【备注】:以上3个命令均可上传文件到hdfs上。

                  #文件夹上传、拷贝、移动

                    #文件夹上传、拷贝、移动
                    hdfs dfs -put /本地路径/文件夹名 /hdfs路径
                    hdfs dfs -copyFromLocal /本地路径/文件夹名 /hdfs路径
                    hdfs dfs -moveFromLocal /本地路径/文件夹名 /hdfs路径
                    示例:
                    hdfs dfs -put /data/20221204 /input/
                    hdfs dfs -copyFromLocal /data/20221204 /input/20221204-1
                    hdfs dfs -moveFromLocal /data/20221204 /input/20221204-2


                    文件上传、拷贝、移动命令执行截图

                    文件夹上传、拷贝、移动命令执行截图

                    2.2 下载文件、文件夹到本地

                    #下载文件到本地
                      hadoop fs -get /hdfs路径/文件名  /本地路径
                      hdfs dfs -get /hdfs路径/文件名 /本地路径
                      示例:
                      hdfs dfs -get /input/20221204/yarn-site.xml /data
                      hdfs dfs -get /input/20221204/yarn-site.xml /data/yarn-site-20221204bak.xml
                      #下载文件夹到本地
                        hadoop fs -get /hdfs路径  /本地路径
                        示例:
                        hadoop fs -get /home/nps1900/20221204 /opt


                        #合并下载

                          hdfs  dfs -getmerge /hdfs路径文件夹 /合并后的文件
                          示例:
                          hdfs dfs -getmerge /input/20221204-3 /data/mapred-yarn-20221204bak.xml


                          下载文件到本地:

                          下载文件夹到本地:

                          合并下载到本地:


                          3 、hdfs内部操作


                          3.1 查看hdfs中的文件


                            hdfs dfs -cat /hdfs路径/文件 
                            【注释】:从头查看这个文件
                            hdfs dfs -tail -f /hdfs路径/文件
                            【注释】:从尾部查看最后1k(显示文件的最后1kb内容到标准输出)
                            示例:
                            hdfs dfs -cat /input/20221204/yarn-site.xml
                            hdfs dfs -tail -f /input/20221204/yarn-site.xml


                            3.2 复制hdfs文件、文件夹


                              hdfs dfs -cp /hdfs路径 /hdfs路径
                              示例:
                              hdfs dfs -cp /input/20221204-3/mapred-site.xml /input/20221204
                              【注释】:复制mapred-site.xml到hdfs路径/input/20221204下
                              hdfs dfs -cp /input/20221204-3 /home/nps1900
                              【注释】:复制文件夹/input/20221204-3到文件夹/home/nps1900下


                              复制一个hdfs文件到另外一个文件夹下:

                              复制文件夹到另外一个文件夹下:

                              3.3 移动hdfs文件、文件夹



                                hadoop fs -mv /hdfs路径/文件名 /hdfs路径
                                hadoop fs -mv /hdfs路径 /hdfs路径
                                hadoop fs -mv /hdfs路径/文件名1 /hdfs路径/文件名2
                                示例:
                                hadoop fs -mv /input/20221204-3/mapred-site.xml /input
                                【注释】:将文件mapred-site.xml 移动到hdfs路径/input下
                                hadoop fs -mv /input/20221204 /home/nps1900
                                【注释】:将hdfs文件夹20221204移动到hdfs文件夹/home/nps1900下
                                hadoop fs -mv /input/mapred-site.xml /home/nps1900/mapred-site-20221204bak.xml
                                【注释】:将/input文件夹下的mapred-site.xml移动到/home/nps1900/文件夹下,并重命名为mapred-site-20221204bak.xml

                                移动hdfs文件:

                                移动hdfs文件夹:

                                移动hdfs文件并重命名:

                                3.4 删除hdfs文件、文件夹


                                  #删除hdfs文件
                                  hadoop fs -rm /hdfs路径/文件名
                                  hadoop fs -rm -r /hdfs路径/文件名
                                  #删除hdfs文件夹
                                  hadoop fs -rm /hdfs路径/文件名
                                  hadoop fs -rm -r /hdfs路径/文件夹名
                                  示例:
                                  hadoop fs -rm -r /home/nps1900/20221204-3/yarn-site.xml
                                  hadoop fs -rm -r /home/nps1900/20221204-3
                                  【备注】:慎用递归-r 参数


                                  3.5 创建文件


                                    hdfs dfs -touchz /hdfs路径/文件名
                                    示例:
                                    hdfs dfs -touchz /input/20221204-1/20221204.log


                                    4、其他命令


                                    4.1 修改副本数


                                      hadoop fs -setrep 1 /hdfs路径/文件名
                                      示例:
                                      hadoop fs -setrep 1 /home/nps1900/20221204/yarn-site.xml


                                      4.2 查看hdfs总空间


                                        hadoop fs -df /
                                        hadoop fs -df -h /


                                        4.3 统计文件夹中文件个数


                                          hdfs dfs -count /hdfs路径/文件夹
                                          示例:
                                          hdfs dfs -count /home/nps1900/20221204


                                          4.4 显示文件、文件夹大小

                                          #显示文件夹大小
                                            hdfs dfs  -du /hdfs路径
                                            【注释】:显示给定目录中包含的文件和目录的大小或文件的长度,用字节大小表示
                                            hdfs dfs -du -s /hdfs路径/
                                            【注释】:-s选项将显示文件夹长度的汇总摘要,而不是单个文件。
                                            hdfs dfs -du -h /hdfs路径/------------------------推荐命令
                                            【注释】:-h选项将以“人类可读”的方式格式化文件大小 如下图的1.3K,而不是1347字节
                                            示例:
                                            hdfs dfs -du /home/nps1900/20221204
                                            hdfs dfs -du -s /home/nps1900/20221204/
                                            hdfs dfs -du -h /home/nps1900/20221204/
                                            #显示文件大小
                                              hdfs dfs  -du /hdfs路径/文件名
                                              hdfs dfs -du -s /hdfs路径/文件名
                                              hdfs dfs -du -h /hdfs路径/文件名------------------------推荐命令
                                              示例:
                                              hdfs dfs -du /home/nps1900/20221204/yarn-site.xml
                                              hdfs dfs -du -s /home/nps1900/20221204/yarn-site.xml
                                              hdfs dfs -du -h /home/nps1900/20221204/yarn-site.xml


                                              显示文件夹大小:

                                              显示文件大小:

                                              4.5 获取源文件并以文本格式输出文件


                                                hdfs dfs -text /hdfs路径/文件名
                                                获取源文件并以文本格式输出文件。允许的格式为zip和TextRecordInputStream
                                                示例:
                                                hdfs dfs -text /home/nps1900/20221204/yarn-site.xml


                                                4.6 查找文件

                                                #查找文件
                                                  hdfs dfs -find hdfs路径 -name 关键字
                                                  hdfs dfs -find hdfs路径 |grep 关键字
                                                  示例:
                                                  hdfs dfs -find /input -name '2022*'
                                                  hdfs dfs -find /input |grep '2022*'


                                                  #关键字查找文件中文字
                                                  hdfs dfs -cat /hdfs路径/文件名 | grep 过滤字段(关键字)
                                                  从hdfs上过滤包含某个字符的行内容
                                                  示例:
                                                  hdfs dfs -cat /home/nps1900/20221204/mapred-site.xml |grep yarn.resourcemanager.hostname
                                                  hdfs dfs -cat /home/nps1900/20221204/yarn-site.xml |grep yarn.resourcemanager.hostname

                                                  查找文件:

                                                  查找文件中的内容:

                                                  4.7 给文件、文件夹赋权


                                                    hdfs dfs -chmod [权限参数] /hdfs目录
                                                    hdfs dfs -chmod [权限参数] /hdfs目录/文件名
                                                    hdfs dfs -chmod -R [权限参数] /hdfs目录
                                                    示例:
                                                    hdfs dfs -chmod 777 /input/20221204-1/20221204.log
                                                    hdfs dfs -chmod 777 /input/20221204-1
                                                    hdfs dfs -chmod -R 777 /input/20221204-1



                                                    文章转载自闵栋,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                                                    评论