HDFS 命令深入浅出~

[root@neusoft-master ~]# hadoop dfs

Usage: hadoop fs [generic options]
[-appendToFile <localsrc> ... <dst>]
[-cat [-ignoreCrc] <src> ...]
[-checksum <src> ...]
[-chgrp [-R] GROUP PATH...]
[-chmod [-R] <MODE[,MODE]... | OCTALMODE> PATH...]
[-chown [-R] [OWNER][:[GROUP]] PATH...]
[-copyFromLocal [-f] [-p] [-l] <localsrc> ... <dst>]  #常用的命令,请熟记
[-copyToLocal [-p] [-ignoreCrc] [-crc] <src> ... <localdst>]
[-count [-q] [-h] [-v] <path> ...]    #常用的命令,请熟记
[-cp [-f] [-p | -p[topax]] <src> ... <dst>]   #常用的命令,请熟记
[-createSnapshot <snapshotDir> [<snapshotName>]]
[-deleteSnapshot <snapshotDir> <snapshotName>]
[-df [-h] [<path> ...]]
[-du [-s] [-h] <path> ...]
[-expunge]
[-find <path> ... <expression> ...]
[-get [-p] [-ignoreCrc] [-crc] <src> ... <localdst>]
[-getfacl [-R] <path>]
[-getfattr [-R] {-n name | -d} [-e en] <path>]
[-getmerge [-nl] <src> <localdst>]
[-help [cmd ...]]
[-ls [-d] [-h] [-R] [<path> ...]]   #常用的命令,请熟记
[-mkdir [-p] <path> ...]   #常用的命令,请熟记
[-moveFromLocal <localsrc> ... <dst>]
[-moveToLocal <src> <localdst>]
[-mv <src> ... <dst>]
[-put [-f] [-p] [-l] <localsrc> ... <dst>]  #常用的命令,请熟记
[-renameSnapshot <snapshotDir> <oldName> <newName>]
[-rm [-f] [-r|-R] [-skipTrash] <src> ...]   #常用的命令,请熟记
[-rmdir [--ignore-fail-on-non-empty] <dir> ...]
[-setfacl [-R] [{-b|-k} {-m|-x <acl_spec>} <path>]|[--set <acl_spec> <path>]]
[-setfattr {-n name [-v value] | -x name} <path>]
[-setrep [-R] [-w] <rep> <path> ...]
[-stat [format] <path> ...]
[-tail [-f] <file>]   #常用的命令,请熟记
[-test -[defsz] <path>]
[-text [-ignoreCrc] <src> ...]  #常用的命令,请熟记
[-touchz <path> ...]    #常用的命令,请熟记
[-usage [cmd ...]]

练习使用上述命令

1.[root@neusoft-master ~]# hadoop dfs -ls /    #列出文件或目录内容

2. hadoop dfs -ls -R /  递归列出目录内容

之前使用的命令是:也显示了使用ls -R代替lsr

3.查看目录使用情况

[root@neusoft-master ~]# hadoop dfs -df /hbase

[root@neusoft-master ~]# hadoop dfs -df /     #查看根目录使用情况

4.显示目录中所有文件及目录大小

[root@neusoft-master ~]# hadoop dfs -du /

5.显示 指定路径 下的目录数以及文件数,输出格式:

目录数 文件数  大小  文件名

[root@neusoft-master ~]# hadoop dfs -count /    #加上-q參數可查看文件索引

6.HDFS上創建文件

[root@neusoft-master ~]# hadoop dfs -touchz /user/root/test001

[root@neusoft-master ~]# hadoop dfs -ls /user/root    #hadoop dfs -ls /

7. 將HDFS上面的文件移動到目的文件夾

[root@neusoft-master ~]# hadoop dfs -mv /user/root/test001 /user/root/test

[root@neusoft-master ~]# hadoop dfs -ls /user/root/test

17/01/28 07:53:56 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 2 items
-rw-r--r-- 3 root supergroup 19 2017-01-07 11:31 /user/root/test/demo1
-rw-r--r-- 3 root supergroup 0 2017-01-28 07:49 /user/root/test/test001

8.將HDFS上面 相應路徑的文件移動到回收站

[root@neusoft-master ~]# hadoop dfs -rm /user/root/test/test001
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

17/01/28 08:02:07 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
17/01/28 08:02:08 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes.
Deleted /user/root/test/test001

備注1:hadoop dfs -rmr    /user/root/test/test001 #删除相应目录以及目录下的文件,加上-skipTrash则直接删除

备注2:清除回收站-expunge

9.将本地centos文件上传至hdfs文件系统目录

[root@neusoft-master ~]# hadoop dfs -put /usr/local/filecontent/wordsTest001 /user/root/

[root@neusoft-master ~]# hadoop dfs -ls /

17/01/28 09:35:06 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 5 items
-rw-r--r-- 3 root supergroup 120064 2017-01-07 09:54 /234967-13112015163685.jpg
drwxr-xr-x - root supergroup 0 2017-01-28 06:58 /hbase
-rw-r--r-- 3 root root 20 2017-01-07 10:14 /hello2
drwxrwxrwx - root supergroup 0 2017-01-06 21:37 /tmp
drwxr-xr-x - root supergroup 0 2017-01-07 15:05 /user
[root@neusoft-master ~]# hadoop dfs -ls /user/root

17/01/28 09:37:12 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 4 items
drwxr-xr-x - root supergroup 0 2017-01-05 23:58 /user/root/input
drwxr-xr-x - root supergroup 0 2017-01-06 00:02 /user/root/output
drwxr-xr-x - root supergroup 0 2017-01-28 08:02 /user/root/test
-rw-r--r-- 3 root supergroup 30 2017-01-28 09:34 /user/root/wordsTest001

10.put的另一种实现方法

[root@neusoft-master ~]# hadoop dfs-copyFromLocal /usr/local/filecontent/wordsTest001 /user/root/test

[root@neusoft-master ~]# hadoop dfs -ls /user/root/test

11.本地文件系统移动到HDFS上

[root@neusoft-master ~]# hadoop dfs -moveFromLocal /usr/local/filecontent/word  /user/root/test

[root@neusoft-master ~]#hadoop dfs -ls /user/root/test

查看本地文件系统发现文件已移走

12.下载Hdfs上面的文件到本地

[root@neusoft-master ~]# hadoop dfs -get /user/root/test/word  /usr/local/filecontent/

查看结果:

補充:此時文件已存在會提醒已存在

方式2:[root@neusoft-master ~]# hadoop dfs -copyToLocal  /user/root/test/word /usr/local/filecontent/

方式3:[root@neusoft-master ~]# hadoop dfs -moveToLocal  /user/root/test/word /usr/local/filecontent/

#可以加-crc,表示crc文件校驗

13.将HDFS源路径下的所有文件名排序合并成一个文件输出到本地目录

[root@neusoft-master ~]# hadoop dfs -getmerge /user/root/test/   /usr/local/result

addnl是可供選擇的項。表示指定在每個文件結尾添加換行符

14.查看Hdfs上面文本的内容

[root@neusoft-master ~]# hadoop dfs -cat /user/root/test/word

或者:[root@neusoft-master ~]# hadoop dfs -text /user/root/test/word

15.在HDFS上創建目錄和文件操作

創建目錄 [root@neusoft-master ~]# hadoop dfs -mkdir  /user/test001

創建文件操作[root@neusoft-master ~]# hadoop dfs -touchz  /user/test001/wordp

16.檢查Hdfs上面文件路徑

[root@neusoft-master ~]# hadoop dfs -test -e  /user/test001/wordp

注:-e檢查文件是否存在   -z檢查文件是否為0字節  -d表示是目錄,返回1,否則0

17.顯示給定路徑的文件或目錄的統計信息,%b 文件大小%n文件名 %r複製因子 %y %Y修改日期

[root@neusoft-master ~]# hadoop dfs -stat %b%n%o%r /user/test001/wordp

17/01/28 10:47:12 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
0wordp1342177283

18. 顯示Hdfs上路徑中的文件最後1字節内容

[root@neusoft-master ~]# hadoop dfs -tail -f /user/root/test/word   #-f選項的内容會隨著文件内容更新而更新

19.HDFS改變文件或目錄權限chmod

[root@neusoft-master ~]# hadoop dfs -chmod -R 777 /user/root/test/word    #-R表示递归

[root@neusoft-master ~]# hadoop dfs -ls /user/root/test/word

17/01/28 12:22:53 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
-rwxrwxrwx 3 root supergroup 30 2017-01-28 09:56 /user/root/test/word

20.改变HDFS上面为path所属类别。-R表示递归操作

[root@neusoft-master ~]# hadoop dfs -chown -R root /user/test
17/01/28 12:27:28 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

[root@neusoft-master ~]# hadoop dfs -ls /user/test
17/01/28 12:27:38 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

Found 1 items
drwxr-xr-x - root supergroup 0 2017-01-07 15:02 /user/test/demo2

备注:所有命令帮助文档,可帮助查询

Hdfs操作命令~End!

HDFS 命令深入浅出的更多相关文章

  1. HDfs命令

    HDFS命令分为用户命令(dfs,fsck等),管理员命令(dfsadmn,namenode,datanode等) hdfs -ls -lsr 执行lsr 是递归显示 drwxr-xr-x -hado ...

  2. 4-linux、hdfs命令

    定义: linux:Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的 操作系统.它能运行主要的UNIX工具软件.应用程序和 ...

  3. hdfs命令get或者put提示找不到目录或文件

    今天用hdfs命令出现个诡异情况: hadoop fs -put a.txt /user/root/ put: `a.txt': No such file or directory 用get命令存在相 ...

  4. HDFS 命令大全

    目录 概要 用户命令 dfs 命令 追加文件内容 查看文件内容 得到文件的校验信息 修改用户组 修改文件权限 修改文件所属用户 本地拷贝到 hdfs hdfs 拷贝到本地 获取目录,文件数量及大小 h ...

  5. hadoop hdfs 命令

    hdfs命令常用操作: hdfs帮助 -help [cmd] 显示命令的帮助信息 [hadoop@hadoop-01 ~]$ hdfs dfs -help ls 递归显示当前目录下的所有文件: [ha ...

  6. HDFS命令实现分析

    HDFS命令概述 HDFS命令涉及两类,一类是hadoop命令,一类是hdfs命令,功能也分为两类,第一类是HDFS文件操作命令,第二类是HDFS管理命令. 二者都是shell命令,真正的命令只有ha ...

  7. 二:HDFS 命令指南

    命令具体选项请参考: http://hadoop.apache.org/docs/r2.6.3/hadoop-project-dist/hadoop-hdfs/HDFSCommands.html   ...

  8. (转)linux route命令深入浅出与实战案例精讲

    linux route命令深入浅出与实战案例精讲 http://blog.51cto.com/oldboy/1119453 深入浅出之-route命令实战使用指南 http://blog.51cto. ...

  9. 介绍hadoop中的hadoop和hdfs命令

    有些hive安装文档提到了hdfs dfs -mkdir ,也就是说hdfs也是可以用的,但在2.8.0中已经不那么处理了,之所以还可以使用,是为了向下兼容. 本文简要介绍一下有关的命令,以便对had ...

随机推荐

  1. c++const关键字---15

    原创博文,转载请标明出处--周学伟 http://www.cnblogs.com/zxouxuewei/ const是一个C++语言的限定符,它限定一个变量不允许被改变.使用const在一定程度上可以 ...

  2. GDAL------加载Shapefile文件

    代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...

  3. nyoj 1239 引水project (河南省第八届acm程序设计大赛)

    题目1239 pid=1239" style="color:rgb(55,119,188)">题目信息 pid=1239" style="col ...

  4. com.alibaba.fastjson.JSONObject

    package com.alibaba.fastjson; import java.util.Date; import java.util.List; import com.alibaba.fastj ...

  5. ios开发之 -- stringByAddingPercentEscapesUsingEncoding方法被替换 iOS9.0

    最近在项目中,发现之前的一个方法已经不被建议使用了. 该方法名即题目中提到的: stringByAddingPercentEscapesUsingEncoding,这个方法是用来进行转码的,即将汉字转 ...

  6. 在SELECT DISTINCT 状况下使用 Order BY Newid() 随机数选出记录

    在日常作业中,有时候可能是一些活动要抽出得奖人或选出抽查的一些名单, 就常常会使用到 Order BY Newid() 的方式来做随机数选出, 但有可能的状况需是要搭配到 DISTINCT 来选出,这 ...

  7. Kali linux 试用:dnsenum

    dnsenum的目的是尽可能收集一个域的信息,它能够通过谷歌或者字典件猜测可能存在的域名,以及对一个网段进行反向查询.它可以查询网站的主机地址信息.域名服务器.mx record(函件交换记录),在域 ...

  8. Ansible常用模块使用

    Ansible官方提供了非常多的模块,还有若干第三方模块,我们也可以自己编写模块. Ansible对远程服务器的操作实际是通过模块完成的,先将模块拷贝到远程服务器,完成操作后,然后在远程服务器上删除该 ...

  9. solr java demo 基础入门

      <!--solr的maven依赖--> <dependencies> <dependency> <groupId>org.apache.solr&l ...

  10. jinja语法

    <!--base.html--> <!DOCTYPE html> <html lang="en"> <head> <!--ht ...