【Hadoop】HDFS笔记(三):HDFS的Shell操作
HDFS处理文件的命令和Linux命令差不多,但注意区分大小写。
(Linux区分大小写,Windows不区分大小写)
一、fs命令
键入命令“./bin/hadoop fs”将输出能够支持的命令列表。
Usage: java FsShell
[-ls <path>]
[-lsr <path>]
[-df <path>]
[-du [-s] [-h] <path>]
[-dus <path>]
[-count [-q] <path>]
[-mv <src> <dst>]
[-cp <src> <dst>]
[-rm [-skipTrash] <path>]
[-rmr [-skipTrash] <path>]
[-expunge]
[-put <localsrc> … <dst>]
[-copyFromLocal <localsrc> … <dst>]
[-moveFromLocal <localsrc> … <dst>]
[-get [-ignoreCrc] [-crc] <src> <localdst>]
[-getmerge <src> <localdst> [addnl]]
[-cat <src>]
[-text <src>]
[-copyToLocal [-ignoreCrc] [-crc] <src> <localdst>]
[-moveToLocal [-crc] <src> <localdst>]
[-mkdir <path>]
[-setrep [-R] [-w] <rep> <path/file>]
[-touchz <path>]
[-test –[ezd] <path>]
[-stat [format] <path>]
[-tail [-f] <file>]
[-chmod [-R] <MODE[, MODE] … | OCTALMODE> PATH…]
[-chown [-R] [OWNER] [: [GROUP]] PATH…]
[-chmod [-R] GROUP PATH…]
[-help [cmd]]
下面说说最主要的几个命令。
1. 创建文件夹
HDFS上的文件目录结构类似Linux,根目录使用/表示。下面的命令在/user/hadoop目录下建立input。
denny@Ubuntu1:/opt/hadoop-1.0.3$ hadoop fs –mkdir /user/hadoop/input
denny@Ubuntu1:/opt/hadoop-1.0.3$ hadoop fs –ls /user/hadoop
Found1 items
drwxr-xr-x - denny supergroup 0 2014-09-21 23:38 /user/hadoop/input
2. 上传文件test.txt到input下。
denny@Ubuntu1:/opt/hadoop-1.0.3$ hadoop fs –put test.txt /user/hadoop/input
denny@Ubuntu1:/opt/hadoop-1.0.3$ hadoop fs –ls /user/hadoop/input
Found1 items
-rw-r--r--1 denny supergroup 75 2014-09-21 23:45 /user/hadoop/input/test.txt
还可以用-copyFromLocal命令。
3.查看test.txt文件内容
denny@Ubuntu1:/opt/hadoop-1.0.3$ hadoop fs –text /user/hadoop/input/test.txt
helloworld
helloworld…
还可以用-cat、-tail命令查看文件内容,但是对于压缩文件只能用-text参数查看,否则是乱码。
4.把test.txt文件复制到本地(下载,导出)
denny@Ubuntu1:/opt/hadoop-1.0.3$ hadoop fs –get /user/hadoop/input/test.txt
还可以用-copyToLocal命令。
5.删除test.txt文件
denny@Ubuntu1:/opt/hadoop-1.0.3$ hadoop fs –rm /user/hadoop/input/test.txt
二、namenode命令
运行namenode进行格式化、升级、回滚等操作。
命令选项 |
功能描述 |
-format |
格式化NameNode,启动NameNode,格式化NameNode,之后关闭NameNode |
-upgrade |
分发新版本的Hadoop后,NameNode应以upgrade选项启动 |
-rollback |
将NameNode回滚到前一版本。此选项要在停止集群、分发Hadoop旧版本后使用 |
-finalize |
删除文件系统的前一状态。最近的升级会被持久化,rollback选项将再不可用升级终结操作之后,会停掉NameNode |
-importCheckPoint |
从检查点目录装在镜像并保存到当前检查点目录,检查点目录由fs.checkpoint.dir指定 |
(注:Hadoop集群第一次启动时一定要格式化NameNode,否则NameNode会报错)
三、job命令
命令选项 |
功能描述 |
-submit <job file> |
提交作业 |
-status <job-id> |
打印Map和Reduce完成百分比和所计数器 |
-counter <job-id> <group-name> <counter-name> |
打印计数器的值 |
-kill <job-id> |
杀死指定作业 |
-events <job-id> <from-event-#> <#-of-events> |
打印给定范围内的JobTracker接收到的事件细节 |
-history [all] <jobOutputDir> |
-history <jobOutputDir>用于打印作业细节,失败及被杀死原因细节。更多关于一个作业细节(如成功的任务、做过的任务尝试等信息)可以通过指定[all]选项查看 |
-list [all] |
显示所有作业。-list只显示将要完成的作业 |
-kill-task <task-id> |
杀死任务,被杀死的任务不会不利于失败尝试 |
-fail-task <task-id> |
使任务失败,被失败的任务会对失败尝试不利 |
四、fsck命令
显示块的信息,列出文件系统中各文件由那些块构成。用于和MapReduce作业交互和命令。
命令选项 |
描述信息 |
<path> |
检查起始的目录 |
-move |
移动受损文件到/lost+found |
-delete |
删除受损文件 |
openforwrite |
打印写打开的文件 |
-files |
打印正在被检查的文件 |
-blocks |
打印块信息报告 |
-locations |
打印每个块的位置信息 |
-racks |
打印datanode的网络拓扑结构 |
五、pipe命令
该命令用于运行pipe作业。
命令选项 |
描述信息 |
-conf <path> |
作业的配置 |
-jobconf <key=value>, <key=value>, … |
增加/覆盖作业的配置项 |
-input <path> |
输入目录 |
-output <path> |
输出目录 |
-jar<jar file> |
JAR文件名 |
-inputformat <class> |
InputFormat类 |
-map <class> |
Java Map类 |
-partitioner <class> |
Java Partitioner |
-reduce <class> |
Java Reduce类 |
-write <class> |
Java RecordWriter |
-program <executable> |
可执行程序的URI |
-reduces <num> |
Reduce个数 |
【Hadoop】HDFS笔记(三):HDFS的Shell操作的更多相关文章
- Hadoop学习笔记(三) ——HDFS
参考书籍:<Hadoop实战>第二版 第9章:HDFS详解 1. HDFS基本操作 @ 出现的bug信息 @-@ WARN util.NativeCodeLoader: Unable to ...
- Hadoop学习笔记(2)-HDFS的基本操作(Shell命令)
在这里我给大家继续分享一些关于HDFS分布式文件的经验哈,其中包括一些hdfs的基本的shell命令的操作,再加上hdfs java程序设计.在前面我已经写了关于如何去搭建hadoop这样一个大数据平 ...
- Hadoop学习笔记: HDFS
注:该文内容部分来源于ChinaHadoop.cn上的hadoop视频教程. 一. HDFS概述 HDFS即Hadoop Distributed File System, 源于Google发表于200 ...
- shell脚本编程学习笔记(四)shell操作数据库
一.数据库基本操作 1)登录mysql服务器:mysql -u root -p 密码 2)查看数据库:show databases 3)查看表:show tales from db; 4)查看表结构: ...
- hadoop学习笔记贰 --HDFS及YARN的启动
1.初始化HDFS :hadoop namenode -format 看到如下字样,说明初始化成功. 启动HDFS,start-dfs.sh 终于启动成功了,原来是core-site.xml 中配置 ...
- Hadoop学习笔记三
一.设置HDFS不进行权限检查 默认的HDFS上的文件类似于Linux中的文件,是有权限的.例如test用户创建的文件,root用户如果没有写权限,则不能进行删除. 有2种办法进行修改,修改文件的权限 ...
- MYSQL初级学习笔记三:数据的操作DML!(视频序号:初级_24,25,36)
知识点五:数据的操作DML(24,25,36) 插入数据: --测试插入记录INSERT CREATE TABLE IF NOT EXISTS user13( id TINYINT UNSIGNED ...
- SQL学习笔记三之MySQL表操作
阅读目录 一 存储引擎介绍 二 表介绍 三 创建表 四 查看表结构 五 数据类型 六 表完整性约束 七 修改表ALTER TABLE 八 复制表 九 删除表 一 存储引擎介绍 存储引擎即表类型,mys ...
- Hibernate学习笔记三:常用数据库操作语句
转载请注明原文地址: 一:HQL 1:HQL语句格式:select from POJO类名 where 条件表达式 group by 属性 having 聚集函数 order by 属性 [其中,fr ...
- Hadoop读书笔记(二)HDFS的shell操作
Hadoop读书笔记(一)Hadoop介绍:http://blog.csdn.net/caicongyang/article/details/39898629 1.shell操作 1.1全部的HDFS ...
随机推荐
- Terminal emulator
http://en.wikipedia.org/wiki/Terminal_emulator Terminal emulator From Wikipedia, the free encycloped ...
- Matlab princomp函数浅析
matlab中的princomp函数主要是实现主成分分析的功能,有1一个输入参数,4个返回参数,形式如下: [coef, score, latent, t2] = princomp(X) 输入: X为 ...
- Matlab---傅里叶变换---通俗理解(二)
1.用Matlab进行傅立叶变换 FFT是离散傅里叶变换的高速算法,能够将一个信号变换到频域.有些信号在时域上是非常难看出什么特征的,可是假设变换到频域之后,就非常easy看出特征了.这就是非常多信号 ...
- Memcache介绍
面临的问题 对于高并发高訪问的 Web应用程序来说.数据库存取瓶颈一直是个令人头疼的问题. 特别当你的程序架构还是建立在单数据库模式,而一个数据池连接数峰值已经达到500的时候,那你的程序执行离崩溃的 ...
- iOS 7 中 StoryBoard 总体缩放
iOS 7 中 StoryBoard 总体缩放 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用 ...
- VMware Workstation 14创建mac-10.12虚拟机详细步骤
一.VMware和unlocker的下载和安装 链接:https://pan.baidu.com/s/15Z4DqRENt6JdyfJef_VWSw 密码:40vw 1.安装VMware Works ...
- 第 3 章 第 1 题 精简冗余 if 语句问题 使用数组实现
问题分析 输入:用户个人收入 输出:该用户要缴纳的个人所得税 约束:不允许使用过多的 if 语句 解答思路 最简单的方法是根据不同的税率区间,创建多个 if 语句来求解.但如此一来便会有 25 个 i ...
- 使用无缓冲IO函数读写文件
前言 本文介绍使用无缓冲IO函数进行文件读写. 所谓的无缓冲是指该IO函数通过调用系统调用实现,其实系统调用内部的读写实现也是使用了缓冲技术的. 读写步骤 1. 打开文件 open 函数 2. 读写文 ...
- 下拉刷新swipetoloadlayout的使用方法,以及自己定义头部
<20160930---------–更新内容 回过头看自己曾经写的这个博客非常多的废话 和效果并不适合大家去使用这个好用的控件 如今整理删掉了自己写的效果, 写了个最简单的实例给一起学习的新手 ...
- Java类加载器(死磕3)
[正文]Java类加载器( CLassLoader ) 死磕3: 揭秘 ClassLoader抽象基类 本小节目录 3.1. 类的加载分类:隐式加载和显示加载 3.2. 加载一个类的五步工作 3. ...