HDFS基础1

Posted on 2018-07-12 15:12  _Lm  阅读(174)  评论(0)    收藏  举报

一、HDFS入门

二、HDFS基本操作

1shell命令行客户端

Hadoop提供了文件系统的shell命令行客户端,使用方法如下:

Hadoop fs <args>(参数哪一个文件系统和什么样的操作)

文件系统shell包括与Hadoop分布式文件系统(HDFS)以及Hadoop支持的其他文件系统(如本地FS,  HFTP FS, S3 FS等)直接交互的各种类似shell的命令。所有FS shell命令都将路径URI作为参数

URI格式为scheme://suthority/path

对于HDFS来说:schemehdfs

对于本地FS来说:schemefile

schemeauthority是可选的,如果未指定,则使用配置中指定的默认方案

对于HDFS,命令示例如下:

Hadoop fs -ls hdfs://namenode:host/parent/child

Hadoop fs -ls /parent/child    fs.defaultFS中有配置

对于本地文件系统命令示例如下

Hadoop fs -ls file:///root

如果使用的文件系统是HDFS,则使用hdfs dfs也是可以的,此时

Hadoop fs <args> = hdfs dfs <args>

 

三、shell常用命令

1-ls

功能:

显示文件、目录信息

使用:

hadoop  fs  -ls  [-h]human给大小加上了单位)  <args>

示例:

hadoop  fs  -ls  /hello

hadoop  fs  -ls  -h  /hello

2-mkdir

功能:

hdfs上创建目录,-p表示会创建路径中的各级父目录。

使用:

hadoop fs -mkdir [-p] <paths>

示例:

hadoop fs -mkdir -p /hello/hello1/hello2

3-put

功能:

将单个文件或多个文件从本地文件系统复制(上传)到目标文件系统

使用:

hadoop  fs  -put  [-f]  [-p] 本地文件目录 目标文件目录

-p:表示保留访问和修改时间,所有权和权限

-f:覆盖目的地(如果已经存在)

示例:

hadoop  fs  -put  /root/install.log.syslog  /

4-get

功能:

将文件复制(下载)到本地文件系统

使用:

hadoop  fs  -get  [ignorecrc]  [-crc]  [-p]  [-f]  文件系统目录 本地文件保 存目录

-ignorecrc:跳过对下载文件的CRC检查

-crc:为下载的文件写CRC效验和

示例:

hadoop  fs -get  /install.log.syslog  ./(当前目录)

5-appendToFile

功能:

追加一个文件到已经存在的文件末尾

使用:

hadoop  fs  -appendToFile  本地文件目录 目标文件目录

示例:

hadoop  fs  -appendToFile 2.txt  /1.txt

 

6-cat

功能:

显示文件内容

使用:

hadoop  fs  -cat 文件目录

示例:

hadoop  fs  -cat  /1.txt

7-tail

功能:

查看文件的最后一千字内容

使用:

hadoop fs -tail [-f] 目录

示例:

hadoop fs -tail /hadoop/hadoopfile

 

8-getmerge

功能:

合并下在多个文件

示例:

比如hdfs目录 /aaa下多个文件:log.1, log.12, log.3

Hadoop fs -getmerge  /aaa/log.*  ./log.sum

9-setrep

功能:改变一个文件的副本系数。-R 选项用于递归改变目录下所有文件的副本系数

示例:hadoop fs -setrep -w 3(副本个数) [-R(一个文件不用写)]  /user/hadoop/dir1