一、hadoop fs

1、创建目录

[root@master hadoop-2.7.0]# hadoop fs -mkdir /testdir1
[root@master hadoop-2.7.0]# hadoop fs -ls /
Found 2 items
drwxr-xr-x   - root supergroup          0 2018-05-07 11:27 /test
drwxr-xr-x   - root supergroup          0 2018-05-18 09:27 /testdir1

加 -p 则创建多级目录

[root@master hadoop-2.7.0]# hadoop fs -mkdir -p /aa/bb/cc
[root@master hadoop-2.7.0]# hadoop fs -ls /
Found 3 items
drwxr-xr-x   - root supergroup          0 2018-05-18 09:28 /aa
drwxr-xr-x   - root supergroup          0 2018-05-07 11:27 /test
drwxr-xr-x   - root supergroup          0 2018-05-18 09:27 /testdir1

2、ls,列出指定目录的所有文件或文件夹

[root@master hadoop-2.7.0]# hadoop fs -ls /
Found 1 items
drwxr-xr-x   - root supergroup          0 2018-05-07 11:27 /test

加 -R,列出所有级的目录和文件

[root@master hadoop-2.7.0]# hadoop fs -ls -R /
drwxr-xr-x   - root supergroup          0 2018-05-18 09:28 /aa
drwxr-xr-x   - root supergroup          0 2018-05-18 09:28 /aa/bb
drwxr-xr-x   - root supergroup          0 2018-05-18 09:28 /aa/bb/cc
drwxr-xr-x   - root supergroup          0 2018-05-07 11:27 /test
drwxr-xr-x   - root supergroup          0 2018-05-18 09:27 /testdir1

3、copeFromLocal,复制本地文件到hdfs的目录,除了限定源路径是一个本地文件外,和put命令相似,如果要强制复制文件 加-f 也可以一次复制多个文件

[root@master hadoop-2.7.0]# touch /root/file1.txt
[root@master hadoop-2.7.0]# hadoop  fs -copyFromLocal /root/file1.txt /testdir1
[root@master hadoop-2.7.0]# hadoop fs -ls  /testdir1
Found 1 items
-rw-r--r--   2 root supergroup          0 2018-05-18 09:33 /testdir1/file1.txt

4、put,复制文件到hdfs中,文件可以从标准输入中读取(与copeFromLocal不同点,此时dst是一个文件)。

使用方法: hadoop fs -put <localsrc> ... <dst>

1)从本地文件复到hdfs的文件夹(与copeFromLocal相同)

[root@master hadoop-2.7.0]# hadoop fs -put /root/file1.txt /aa
[root@master hadoop-2.7.0]# hadoop fs -ls  /aa
Found 2 items
drwxr-xr-x   - root supergroup          0 2018-05-18 09:28 /aa/bb
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt

2) 从标准输入流中写入到hdfs中

[root@master hadoop-2.7.0]# echo abc | hadoop fs -put - /aa/file2.txt
[root@master hadoop-2.7.0]# hadoop fs -ls  /aa
Found 3 items
drwxr-xr-x   - root supergroup          0 2018-05-18 09:28 /aa/bb
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt
-rw-r--r--   2 root supergroup          4 2018-05-18 09:44 /aa/file2.txt

5、cat,列出文件的内容

[root@master hadoop-2.7.0]# hadoop fs -cat  /test/readme.txt
total 0
drwxr-xr-x.  3 root  root   18 May  7 10:21 dfs
drwxr-xr-x. 10 10021 10021 161 May  7 10:22 hadoop-2.7.0
drwxr-xr-x.  4 root  root   30 May  7 09:15 hdfs
drwxr-xr-x.  3 root  root   17 May  7 10:41 tmp

如果文件过大可以在后面加|more就可以一页一页的显示

 hadoop fs -cat  /test/readme.txt|more

6、rm,删除文件或目录

1)删除文件

[root@master hadoop-2.7.0]# hadoop fs -rm  /aa/file2.txt
rm: Failed to get server trash configuration: null. Consider using -skipTrash option
[root@master hadoop-2.7.0]# hadoop fs -rm -skipTrash  /aa/file2.txt
Deleted /aa/file2.txt

2)删除目录

[root@master hadoop-2.7.0]# hadoop fs -rm -r -skipTrash  /aa/bb
Deleted /aa/bb
[root@master hadoop-2.7.0]# hadoop fs -ls /aa
Found 1 items
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt

7、cp,在hdfs内部复文件,这个命令允许有多个源路径,此时目标路径必须是一个目录

[root@master hadoop-2.7.0]# hadoop fs -cp /aa/file1.txt /aa/file3.txt
18/05/18 10:01:01 WARN hdfs.DFSClient: DFSInputStream has been closed already
[root@master hadoop-2.7.0]# hadoop fs -ls /aa
Found 2 items
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt
-rw-r--r--   2 root supergroup          0 2018-05-18 10:01 /aa/file3.txt

8、get,将文件从hdfs复制到本地

[root@master hadoop-2.7.0]# hadoop fs -get /aa/file3.txt /root/
18/05/18 10:04:11 WARN hdfs.DFSClient: DFSInputStream has been closed already
[root@master hadoop-2.7.0]# ll /root/
total 8
-rw-------. 1 root root 1260 Apr 19 18:36 anaconda-ks.cfg
-rw-r--r--. 1 root root  784 Apr 19 11:35 authorized_keys
-rw-r--r--. 1 root root    0 May 18 09:32 file1.txt
-rw-r--r--. 1 root root    0 May 18 10:04 file3.txt

9、copyToLocal,除了限定目标路径是一个本地文件外,和get命令类似

10、mv,在hdfs内部移动文件

[root@master hadoop-2.7.0]# hadoop fs -mv /aa/file3.txt /aa/file4.txt
[root@master hadoop-2.7.0]# hadoop fs -ls /aa
Found 2 items
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt
-rw-r--r--   2 root supergroup          0 2018-05-18 10:01 /aa/file4.txt

总结用法与Linux命令类似,不再一一列了

二、hdfs dfsadmin 管理命令

1、-report,查看文件系统的信息和统计信息

[root@master hadoop-2.7.0]# hdfs dfsadmin -report
Configured Capacity: 47204802560 (43.96 GB)
Present Capacity: 43612942336 (40.62 GB)
DFS Remaining: 43612909568 (40.62 GB)
DFS Used: 32768 (32 KB)
DFS Used%: 0.00%
Under replicated blocks: 0
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0-------------------------------------------------
Live datanodes (2):Name: 192.168.137.102:50010 (node2)
Hostname: node2
Decommission Status : Normal
Configured Capacity: 23602401280 (21.98 GB)
DFS Used: 16384 (16 KB)
Non DFS Used: 1795612672 (1.67 GB)
DFS Remaining: 21806772224 (20.31 GB)
DFS Used%: 0.00%
DFS Remaining%: 92.39%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri May 18 10:13:58 EDT 2018Name: 192.168.137.101:50010 (node1)
Hostname: node1
Decommission Status : Normal
Configured Capacity: 23602401280 (21.98 GB)
DFS Used: 16384 (16 KB)
Non DFS Used: 1796247552 (1.67 GB)
DFS Remaining: 21806137344 (20.31 GB)
DFS Used%: 0.00%
DFS Remaining%: 92.39%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri May 18 10:13:58 EDT 2018

2、-safemode,enter | leave | get | wait:安全模式命令。安全模式是NameNode的一种状态,在这种状态下,NameNode不接受对名字空间的更改(只读);不复制或删除块。NameNode在启动时自动进入安全模式,当配置块的最小百分数满足最小副本数的条件时,会自动离开安全模式。enter是进入,leave是离开。

[root@master hadoop-2.7.0]# hdfs dfsadmin -safemode get
Safe mode is OFF
[root@master hadoop-2.7.0]# hdfs dfsadmin -safemode enter
Safe mode is ON
[root@master hadoop-2.7.0]# hadoop fs -ls /aa
Found 2 items
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt
-rw-r--r--   2 root supergroup          0 2018-05-18 10:01 /aa/file4.txt
[root@master hadoop-2.7.0]# hadoop fs -rm -skipTrash /aa/file4.txt
rm: Cannot delete /aa/file4.txt. Name node is in safe mode.

3、-refreshNodes,重新读取hosts和exclude文件,使新的节点或需要退出集群的节点能够被NameNode重新识别。这个命令在新增节点或注销节点时用到。

[root@master hadoop-2.7.0]# hdfs dfsadmin -refreshNodes
Refresh nodes successful

4、-finalizeUpgrade,终结HDFS的升级操作。Datanode删除前一个版本的工作目录,之后Namenode也这样做。这个操作完结整个升级过程。

[root@master hadoop-2.7.0]# hdfs dfsadmin -finalizeUpgrade
Finalize upgrade successful

5、-metasave filename,保存Namenode的主要数据结构到hadoop.log.dir属性指定的目录(默认值是hadoop安装目录:/home/hadoop/hadoop-2.7.0)下的<filename>文件。对于下面的每一项,<filename>中都会一行内容与之对应
1. Namenode收到的Datanode的心跳信号
2. 等待被复制的块
3. 正在被复制的块
4. 等待被删除的块

[root@master hadoop-2.7.0]# hdfs dfsadmin -metasave newlog.log
Created metasave file newlog.log in the log directory of namenode hdfs://192.168.137.100:9000

[root@master logs]# pwd
/home/hadoop/hadoop-2.7.0/logs
[root@master logs]# ll
total 940
-rw-r--r--. 1 root root 254161 May 18 10:26 hadoop-root-namenode-master.log
-rw-r--r--. 1 root root    714 May 18 09:21 hadoop-root-namenode-master.out
-rw-r--r--. 1 root root    714 May  7 11:36 hadoop-root-namenode-master.out.1
-rw-r--r--. 1 root root    714 May  7 11:24 hadoop-root-namenode-master.out.2
-rw-r--r--. 1 root root    714 May  7 11:19 hadoop-root-namenode-master.out.3
-rw-r--r--. 1 root root    714 May  7 11:00 hadoop-root-namenode-master.out.4
-rw-r--r--. 1 root root    714 May  7 10:49 hadoop-root-namenode-master.out.5
-rw-r--r--. 1 root root 267631 May 18 10:16 hadoop-root-secondarynamenode-master.log
-rw-r--r--. 1 root root    714 May 18 09:21 hadoop-root-secondarynamenode-master.out
-rw-r--r--. 1 root root    714 May  7 11:36 hadoop-root-secondarynamenode-master.out.1
-rw-r--r--. 1 root root    714 May  7 11:24 hadoop-root-secondarynamenode-master.out.2
-rw-r--r--. 1 root root   6074 May  7 11:21 hadoop-root-secondarynamenode-master.out.3
-rw-r--r--. 1 root root   1067 May  7 11:10 hadoop-root-secondarynamenode-master.out.4
-rw-r--r--. 1 root root  12148 May  7 11:05 hadoop-root-secondarynamenode-master.out.5
-rw-r--r--. 1 root root    582 May 18 10:33 newlog.log
-rw-r--r--. 1 root root      0 May  7 10:22 SecurityAuth-root.audit
-rw-r--r--. 1 root root 340628 May 18 09:31 yarn-root-resourcemanager-master.log
-rw-r--r--. 1 root root    700 May 18 09:21 yarn-root-resourcemanager-master.out
-rw-r--r--. 1 root root    700 May  7 11:36 yarn-root-resourcemanager-master.out.1
-rw-r--r--. 1 root root    700 May  7 11:24 yarn-root-resourcemanager-master.out.2
-rw-r--r--. 1 root root    700 May  7 11:19 yarn-root-resourcemanager-master.out.3
-rw-r--r--. 1 root root    700 May  7 11:10 yarn-root-resourcemanager-master.out.4
-rw-r--r--. 1 root root    700 May  7 11:00 yarn-root-resourcemanager-master.out.5

6、-setQuota <quota> <dirname>...<dirname>,为每个目录 <dirname>设定配额<quota>。目录配额是一个长整型整数N,强制限定了目录树下的名字个数。
命令会在这个目录上工作良好,以下情况会报错:
1. N不是一个正整数,或者
2. 用户不是管理员,或者
3. 这个目录不存在或是文件,或者
4. 目录会马上超出新设定的配额。

[root@master hadoop-2.7.0]# hadoop fs -ls /aa
Found 2 items
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt
-rw-r--r--   2 root supergroup          0 2018-05-18 10:01 /aa/file4.txt
[root@master hadoop-2.7.0]#
[root@master hadoop-2.7.0]#
[root@master hadoop-2.7.0]# hdfs dfsadmin -setQuota 3 /aa
[root@master hadoop-2.7.0]# hadoop fs -touchz /aa/file5.txt
touchz: The NameSpace quota (directories and files) of directory /aa is exceeded: quota=3 file count=4
[root@master hadoop-2.7.0]# hadoop fs -ls /aa
Found 2 items
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt
-rw-r--r--   2 root supergroup          0 2018-05-18 10:01 /aa/file4.txt
[root@master hadoop-2.7.0]# hadoop fs -ls -R /aa
-rw-r--r--   2 root supergroup          0 2018-05-18 09:40 /aa/file1.txt
-rw-r--r--   2 root supergroup          0 2018-05-18 10:01 /aa/file4.txt
[root@master hadoop-2.7.0]# hadoop fs -touchz /aa/fi.txt
touchz: The NameSpace quota (directories and files) of directory /aa is exceeded: quota=3 file count=4
[root@master hadoop-2.7.0]# [root@master hadoop-2.7.0]# hdfs dfsadmin -setQuota 6 /aa
[root@master hadoop-2.7.0]# hadoop fs -touchz /aa/file5.txt

7、-clrQuota <dirname>...<dirname>,为每一个目录<dirname>清除配额设定。
命令会在这个目录上工作良好,以下情况会报错:
1. 这个目录不存在或是文件,或者
2. 用户不是管理员。
如果目录原来没有配额不会报错。

hdfs dfsadmin -clrQuota /aa

hadoop学习笔记(四):hdfs常用命令相关推荐

  1. Linux学习笔记(四)-Linux常用命令

    常用命令格式 #command(指令) [-options] parameter1(参数1) parameter2(参数2)... 大小写区分,tab自动补全 Shell特殊字符 通配符 管道Pipe ...

  2. Hadoop学习笔记之HDFS

    Hadoop学习笔记之HDFS HDFS (Hadoop Distributed File System) 优点 缺点 HDFS操作 命令操作HDFS Web端操作HDFS Java操作HDFS HD ...

  3. RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决)

    RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决) 参考文章: (1)RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决) (2)https://www.cnblogs. ...

  4. Linux学习笔记:Linux常用命令总结

    文章目录 前言 Linux学习笔记:Linux常用命令总结 1. 目录命令 1.1 Linux目录结构 1.2 cd命令 切换工作目录 1.3 ls命令 显示目录下文件 1.4 mkdir命令 创建目 ...

  5. hadoop组件---数据仓库(四)---hive常用命令

    安装好hive的环境之后 我们可以尝试一些常用的命令,常用命令也可以作为平时工作中的速查手册. 进入hive控制台 首先需要知道hive的启动目录在哪,可以使用命令 whereis hive 启动hi ...

  6. Emacs学习笔记(6):常用命令备忘(打印版)

    博客搬家,加上换办公区,Emacs的学习计划就耽搁了. 可能是因为年纪大了,记性大不如以前,新学的很多Emacs快捷键/命令都记不住.所以要整理一个常用命令清单(与当初学习Vim一样),并且打印出来贴 ...

  7. 嵌入式系统学习笔记之五-uboot常用命令之补充

    1.nand 命令 uboot 也支持 NAND Flash 的操作命令,现在我们使用的 NAND 版的开发板,进行本节讲解. 输入"help nand"即可查看 NAND 相关命 ...

  8. Linux学习笔记之Linux常用命令

    从事IT行业的很多人都会使用Linux的常用命令,但是知道这些常用命令全称的人并不多,让我们来看看这些常用命令对应的全称吧! Linux命令大全(手册) https://www.linuxcool.c ...

  9. 嵌入式系统学习笔记之五-- uboot常用命令 环境变量

    uboot 中环境变量的作用就是在不改变源码.不用重新编译的情况下,可以使我们通过设置环境变量的值来改变 uboot 的一些设置.uboot 开机时会一次性从存储介质(启动介质)中读取全部的环境变量到 ...

  10. 嵌入式系统学习笔记之五-- uboot常用命令 概述

    首先,先看看uboot都有那些命令:(这里我使用的是OKMX6ULL-S2开发板的linux版),不同的开发板的系统中的命令可能会稍有差异,对于我们学习影响不大. => help ? - ali ...

最新文章

  1. 交换esc和左ctrl ;caps lock与右ctrl
  2. ds28e01完全数据手册_如何借助《活动管理手册》搭建营销体系?(内含课件PPT)...
  3. VS 2012 NuGet错误
  4. AI将给教育带来巨变,但学校和老师的价值不可替代
  5. python相关背景及语言特点
  6. python中关键字global的简单理解
  7. Java单例模式的几种实现方式
  8. Service实现文件下载
  9. php class setter,设置器 - Setters《 PHP 面向对象 》
  10. SQL Server job突然不工作了
  11. 设置MySQL最大连接数
  12. fir.im Weekly - 2016 年 Android 最佳实践列表 1
  13. atitit 信息存储理论专题 目录 1.1. ACID 1 1.2. 一致性相关的理论 CAP(CA、CP、AP 的相关算法) 1 1.3. BASE 理论。 1 1.4. FLP不可能原理 1
  14. php cmyk转rgb,用PHP将CMYK格式的JPG文件转为RGB格式 | 学步园
  15. 身份证读卡器 护照阅读器,如何能做到读取多证件呢?
  16. 门禁管理系统(Swing/Dos)
  17. struts1 标签
  18. TPM分析笔记(七)TPM 模块中的密码算法家族。
  19. 计算机原理学习(一)
  20. Web开发必知的八种隔离级别

热门文章

  1. 无法连接远程计算机,远程桌面由于以下原因之一无法连接到远程计算机
  2. 怎么用python分析数据_如何用python进行数据分析?
  3. android 微信设置圆角边框代码,Android编程实现圆角边框的方法
  4. 等长子网划分、变长子网划分(网络整理)
  5. python 利器_python利器之切片
  6. 20190822:(leetcode习题)字符串转换整数 (atoi)
  7. 大话信号多久可以移服务器,关于第十届服务器联赛规则及日期详细介绍(二)...
  8. java判断字符串是子串_【Java】判断字符串是否包含子字符串
  9. ansys icem cfd网格划分技术实例详解_新软速递极简的CFD软件in:Flux
  10. db2 mysql oracle,五大主流数据库比较 DB2 Oracle MySQL SyBase SQLServer)