zoukankan      html  css  js  c++  java
  • hadoop fs 常用命令(1)

    Hadoop:

    https://blog.csdn.net/mulangren1988/article/details/54860924

    Hadoop:
    1. Hadoop fs –fs [local | <file system URI>]列出在指定目录下的文件内容,支持pattern匹配。输出格式如filename(full path) <r n> size. 其中n代表replica的个数,size代表大小(单位bytes)。 2. hadoop fs ls <path> 递归列出匹配pattern的文件信息,类似ls,只不过递归列出所有子目录信息。 3. hadoop fs –lsr <path>列出匹配pattern的指定的文件系统空间总量(单位bytes),等价于unix下的针对目录的du sb <path>/*和针对文件的du b <path> ,输出格式如name(full path) size(in bytes)4. hadoop fs –du <path> 等价于-du,输出格式也相同,只不过等价于unix的du -sb5. hadoop fs –dus <path> 将制定格式的文件 move到指定的目标位置。当src为多个文件时,dst必须是个目录。 6. hadoop fs –mv <src> <dst> 拷贝文件到目标位置,当src为多个文件时,dst必须是个目录。 7. hadoop fs cp <src> <dst> 删除匹配pattern的指定文件,等价于unix下的rm <src> 8. hadoop fs –rm [-skipTrash] <src> 递归删掉所有的文件和目录,等价于unix下的rm –rf <src> 9. hadoop fs –rmr [skipTrash] <src> 等价于unix的rm –rfi <src> 10. hadoop fs –rmi [skipTrash] <src> 从本地系统拷贝文件到DFS 11. hadoop fs put <localsrc> <dst> 等价于-put 12. hadoop fs –copyFromLocal <localsrc> <dst> 等同于-put,只不过源文件在拷贝后被删除 13. hadoop fs –moveFromLocal <localsrc> <dst> 从DFS拷贝文件到本地文件系统,文件匹配pattern,若是多个文件,则dst必须是目录 14. hadoop fs get [-ignoreCrc] [-crc] <src> <localdst> 顾名思义,从DFS拷贝多个文件、合并排序为一个文件到本地文件系统 15. hadoop fs –getmerge <src> <localdst> 输出文件内容 16. hadoop fs cat <src> 等价于-get 17. hadoop fs –copyToLocal [-ignoreCrc] [-crc] <src> <localdst> 在指定位置创建目录 18. hadoop fs mkdir <path> 设置文件的备份级别,-R标志控制是否递归设置子目录及文件 19. hadoop fs –setrep [-R] [-w] <rep> <path/file> 修改文件的权限,-R标记递归修改。MODEa+r,g-w,+rwx等,OCTALMODE755这样 20. hadoop fs –chmod [-R] <MODE[,MODE]…|OCTALMODE> PATH修改文件的所有者和组。-R表示递归 21. hadoop fs -chown [-R] [OWNER][:[GROUP]] PATH等价于-chown … :GROUP 22. hadoop fs -chgrp [-R] GROUP PATH计数文件个数及所占空间的详情,输出表格的列的含义依次为:DIR_COUNT,FILE_COUNT,CONTENT_SIZE,FILE_NAME或者如果加了-q的话,还会列出QUOTA,REMAINING_QUOTA,SPACE_QUOTA,REMAINING_SPACE_QUOTA 23. hadoop fs count[-q] <path>

      2.1 创建目录命令: hdfs  dfs -mkdir <paths>         [hadoop@hadoop002 hadoop]$ hdfs dfs -mkdir /20180523         [hadoop@hadoop002 hadoop]$
        2.2.列出目录的内容命令: hdfs  dfs -ls <paths>
            [hadoop@hadoop002 hadoop]$ hdfs dfs -ls /
            Found 5 items
            drwxr-xr-x   - hadoop supergroup          0 2018-05-23 14:48 /20180523
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 13:04 /gw_test.log3
            drwxr-xr-x   - root   root                0 2018-05-23 13:16 /root
            drwx------   - hadoop supergroup          0 2018-05-22 11:23 /tmp
            drwxr-xr-x   - hadoop supergroup          0 2018-05-22 11:22 /user
            [hadoop@hadoop002 hadoop]$

        2.3  在HDFS中上传文件: hdfs  dfs -put <local_files> ... <hdfs_path>
            [hadoop@hadoop002 hadoop]$ cd ~
            [hadoop@hadoop002 ~]$ ll
            total 4
            -rw-rw-r--. 1 hadoop hadoop  0 May 21 17:09 authorized_key
            -rw-r--r--. 1 hadoop hadoop 25 May 23 12:17 gw_test.log3
            [hadoop@hadoop002 ~]$ hdfs dfs -put gw_test.log3  /gw_test.log4
            [hadoop@hadoop002 ~]$ hdfs dfs -ls /
            Found 6 items
            drwxr-xr-x   - hadoop supergroup          0 2018-05-23 14:48 /20180523
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 13:04 /gw_test.log3
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 14:50 /gw_test.log4
            drwxr-xr-x   - root   root                0 2018-05-23 13:16 /root
            drwx------   - hadoop supergroup          0 2018-05-22 11:23 /tmp
            drwxr-xr-x   - hadoop supergroup          0 2018-05-22 11:22 /user
    
    
        2.4 从HDFS下载文件:hdfs  dfs -get <hdfs_paths> <local_path>
            [hadoop@hadoop002 ~]$ ll
            total 4
            -rw-rw-r--. 1 hadoop hadoop  0 May 21 17:09 authorized_key
            -rw-r--r--. 1 hadoop hadoop 25 May 23 12:17 gw_test.log3
            [hadoop@hadoop002 ~]$ hdfs dfs -get /gw_test.log4 
            [hadoop@hadoop002 ~]$ ll
            total 8
            -rw-rw-r--. 1 hadoop hadoop  0 May 21 17:09 authorized_key
            -rw-r--r--. 1 hadoop hadoop 25 May 23 12:17 gw_test.log3
            -rw-r--r--. 1 hadoop hadoop 25 May 23 14:52 gw_test.log4
     
    
        2.5 查看文件内容:hdfs  dfs -cat <paths>
            [hadoop@hadoop002 ~]$ hdfs dfs -cat /gw_test.log4 
            1111
            2222
            3333
            4444
            5555
            [hadoop@hadoop002 ~]$ 
     
    
        2.6 复制文件命令:hdfs  dfs -cp <source_path> ... <destination_path> 
           [hadoop@hadoop002 ~]$ hdfs dfs -cp /gw_test.log3  /20180523
            [hadoop@hadoop002 ~]$ hdfs dfs -ls /20180523
            Found 1 items
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 14:55 /20180523/gw_test.log3
            [hadoop@hadoop002 ~]$
    
        2.7 将文件从源移动到目标命令: hdfs  dfs -mv <source_path> <destination_path>
            [hadoop@hadoop002 ~]$ hdfs dfs -ls /
            Found 6 items
            drwxr-xr-x   - hadoop supergroup          0 2018-05-23 14:55 /20180523
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 13:04 /gw_test.log3
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 14:50 /gw_test.log4
            drwxr-xr-x   - root   root                0 2018-05-23 13:16 /root
            drwx------   - hadoop supergroup          0 2018-05-22 11:23 /tmp
            drwxr-xr-x   - hadoop supergroup          0 2018-05-22 11:22 /user
            [hadoop@hadoop002 ~]$ hdfs dfs -mv  /gw_test.log4  /20180523
            [hadoop@hadoop002 ~]$ hdfs dfs -ls /
            Found 5 items
            drwxr-xr-x   - hadoop supergroup          0 2018-05-23 14:57 /20180523
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 13:04 /gw_test.log3
            drwxr-xr-x   - root   root                0 2018-05-23 13:16 /root
            drwx------   - hadoop supergroup          0 2018-05-22 11:23 /tmp
            drwxr-xr-x   - hadoop supergroup          0 2018-05-22 11:22 /user
            [hadoop@hadoop002 ~]$ hdfs dfs -ls /20180523
            Found 2 items
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 14:55 /20180523/gw_test.log3
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 14:50 /20180523/gw_test.log4
            [hadoop@hadoop002 ~]$ 
            [hadoop@hadoop002 ~]$ hdfs dfs -rm -r  /20180523
            Deleted /20180523
            [hadoop@hadoop002 ~]$ hdfs dfs -ls /
            Found 4 items
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 13:04 /gw_test.log3
            drwxr-xr-x   - root   root                0 2018-05-23 13:16 /root
            drwx------   - hadoop supergroup          0 2018-05-22 11:23 /tmp
            drwxr-xr-x   - hadoop supergroup          0 2018-05-22 11:22 /user
            [hadoop@hadoop002 ~]$
    
    
        2.8 从HDFS中删除文件或目录命令:
            hdfs  dfs -rm  <path>      -- 删除文件
            hdfs  dfs -rm -r <path>    -- 删除目录 
            [hadoop@hadoop002 ~]$ hdfs dfs -ls /20180523
            Found 2 items
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 14:55 /20180523/gw_test.log3
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 14:50 /20180523/gw_test.log4
            [hadoop@hadoop002 ~]$ hdfs dfs -rm /20180523/gw_test.log3
            Deleted /20180523/gw_test.log3
            [hadoop@hadoop002 ~]$ hdfs dfs -ls /20180523
            Found 1 items
            -rw-r--r--   1 hadoop supergroup         25 2018-05-23 14:50 /20180523/gw_test.log4
            [hadoop@hadoop002 ~]$ 
     
    
        2.9 显示文件的尾部命令:hdfs  dfs -tail <path> 
            [hadoop@hadoop002 ~]$ hdfs dfs -tail  /gw_test.log3
            1111
            2222
            3333
            4444
            5555
            [hadoop@hadoop002 ~]$
    
    
        2.10 显示特定文件的总长度命令: hdfs  dfs -du <path>
            [hadoop@hadoop002 ~]$ hdfs dfs -du  /gw_test.log3
            25  /gw_test.log3
            [hadoop@hadoop002 ~]$ 
     
    
        2.11 计数目录和文件命令: hdfs  dfs -count <path>
            [hadoop@hadoop002 ~]$ hdfs dfs -count  /gw_test.log3
                       0            1                 25 /gw_test.log3
     
    
        2.12 文件系统中的空间的详细信息命名: hdfs  dfs -df <path> 
            [hadoop@hadoop002 ~]$ hdfs dfs -df /
            Filesystem                    Size    Used    Available  Use%
            hdfs://hadoop002:9000  40028807168  704512  30802395136    0%
            [hadoop@hadoop002 ~]$

    1. 单独启动和关闭hadoop服务

    启动名称节点

    #hadoop-daemon.sh start namenode

    启动数据节点

    #hadoop-daemons.sh start datanode slave

    启动secondarynamenode

    #hadoop-daemon.sh start secondarynamenode

    启动resourcemanager

    #yarn-daemon.sh start resourcemanager

    启动nodemanager

    #bin/yarn-daemons.sh start nodemanager

    停止数据节点

    #hadoop-daemons.sh stop datanode

     

    HDFS:

    2. 常用的命令 

    创建目录

    #hdfs dfs -mkdir /input

    创建文件

    #hdfs dfs -touchz 文件名

    查看

    #hdfs dfs  -ls

    递归查看

    #hdfs dfs ls -R

    上传

    #hdfs dfs -put 

    下载

    #hdfs dfs -get 

    删除

    #hdfs dfs -rm

    从本地剪切粘贴到hdfs

    #hdfs fs -moveFromLocal /input/xx.txt /input/xx.txt

    从hdfs剪切粘贴到本地

    #hdfs fs -moveToLocal /input/xx.txt /input/xx.txt

    追加一个文件到另一个文件到末尾

    #hdfs fs -appedToFile ./hello.txt /input/hello.txt

    查看文件内容

    #hdfs fs -cat /input/hello.txt

    显示一个文件到末尾

    #hdfs fs -tail /input/hello.txt

    以字符串的形式打印文件的内容

    #hdfs fs -text /input/hello.txt

    修改文件权限

    #hdfs fs -chmod 666 /input/hello.txt

    修改文件所属

    #hdfs fs -chown ruoze.ruoze  /input/hello.txt

    从本地文件系统拷贝到hdfs里

    #hdfs fs -copyFromLocal /input/hello.txt /input/

    从hdfs拷贝到本地

    #hdfs fs -copyToLocal /input/hello.txt /input/

    从hdfs到一个路径拷贝到另一个路径

    #hdfs fs -cp /input/xx.txt /output/xx.txt

    从hdfs到一个路径移动到另一个路径

    #hdfs fs -mv /input/xx.txt /output/xx.txt

    统计文件系统的可用空间信息

    #hdfs fs -df -h /

    统计文件夹的大小信息

    #hdfs fs -du -s -h /

    统计一个指定目录下的文件节点数量

    #hadoop  fs -count /aaa

    使用hdfs有时候需要统计文件行数和文件的大小

    1.hdfs下载文件夹中多个文件

    hadoop fs -get  /目录   目录

     

    2.统计多个文件行数

    hadoop fs -cat  /文件* | wc -l

     

    3.统计文件大小

    hadoop fs -count /文件*

     

    设置hdfs的文件副本数量

    #hadoop fs -setrep 3 /input/xx.txt

  • 相关阅读:
    Swift3.0_注释,警告,todo的写法
    linux下如何实现mysql数据库定时自动备份
    Weblogic 12c 集群环境搭建
    Weblogic 10.3.6.0 集群搭建
    VMware下Centos6.4安装
    Linux下安装maven和nexus
    hbase查询语法
    笔记本WiFi共享
    CentOS6.4安装JDK,卸载自带的OpenJDK
    Mysql设置允许外网访问
  • 原文地址:https://www.cnblogs.com/Lee-yl/p/10879739.html
Copyright © 2011-2022 走看看