大数据之HDFS命令行基本操作

1、 课程简介

  • HDFS是Hadoop大数据平台中的分布式文件系统,为上层应用或其他大数据组件提供数据存储,如Hive,Mapreduce,Spark,HBase等。
  • 本文章中所有命令均在CentOS-6.4-x86_64,hadoop-2.5.2,jdk1.8.0_152,zookeeper-3.4.11中运行通过,为减少linux权限对初学者造成影响,所有命令均在linux的root权限下进行操作。

2、理论回顾

  • Hadoop技术本身包含HDFS、Map/Reduce。HDFS作海量数据存储之用;M/R作海量数据计算之用。
  • HDFS包含namenode、datanode。namenode对datanode中的数据建立了索引。
  • zookeeper作为协调服务,为namenode提供了高可用性。

3、基本操作

? 注意:"# ./hdfs dfs -ls /"命令前的"#"代表当前登录用户是root。运行路径位于hadoop目录中的bin文件夹下。命令中的"."代表当前目录。命令中涉及的info文件需要提前创建好。如下图所示:

3.1 -ls 功能:显示目录信息。

# ./hdfs dfs -ls /
drwxr-xr-x   - root supergroup          0 2018-07-30 00:09 /hbase
drwxr-xr-x   - root supergroup          0 2018-06-23 15:22 /output
drwx------   - root supergroup          0 2018-07-31 00:32 /tmp
drwxr-xr-x   - root supergroup          0 2018-07-31 00:41 /user
-rw-r--r--   2 root supergroup         77 2018-04-22 02:34 /wordcount

3.2 -mkdir 功能:在HDFS文件系统上创建目录。

# ./hdfs dfs -mkdir /wanhe
# ./hdfs dfs -ls /
drwxr-xr-x   - root supergroup          0 2018-07-30 00:09 /hbase
drwxr-xr-x   - root supergroup          0 2018-06-23 15:22 /output
drwx------   - root supergroup          0 2018-07-31 00:32 /tmp
drwxr-xr-x   - root supergroup          0 2018-07-31 00:41 /user
drwxr-xr-x   - root supergroup          0 2018-09-12 18:00 /wanhe
-rw-r--r--   2 root supergroup         77 2018-04-22 02:34 /wordcount

3.3 -put 功能:上传本地文件到HDFS指定目录。

# ./hdfs dfs -put info /wanhe
# ./hdfs dfs -ls /wanhe
-rw-r--r--   2 root supergroup         38 2018-09-12 18:10 /wanhe/info

3.4 -get 功能:从hdfs下载文件到本地。

# rm -rf info
# ls
container-executor  hadoop  hadoop.cmd  hdfs  hdfs.cmd  mapred  mapred.cmd  rcc  test-container-executor  yarn  yarn.cmd
# ./hdfs dfs -get /wanhe/info ./
# ls
container-executor  hadoop  hadoop.cmd  hdfs  hdfs.cmd  info  mapred  mapred.cmd  rcc  test-container-executor  yarn  yarn.cmd

3.5 -rm 功能:从HDFS删除文件。

# ./hdfs dfs -rm /wanhe/info
# ./hdfs dfs -ls /wanhe
空

3.6 -moveFromLocal 功能:剪切本地文件到HDFS

# ./hdfs dfs -moveFromLocal info /wanhe
# ./hdfs dfs -ls /wanhe
-rw-r--r--   2 root supergroup         38 2018-09-12 22:04 /wanhe/info
# ls
container-executor  hadoop  hadoop.cmd  hdfs  hdfs.cmd  mapred  mapred.cmd  rcc  test-container-executor  yarn  yarn.cmd

3.7 -cat 功能:显示文件内容。

 # ./hdfs dfs -cat /wanhe/info
 jiangsuwanhe

3.8 -appendToFile 功能:在文件末尾追加数据。

 # ./hdfs dfs -appendToFile info /wanhe/info
 # ./hdfs dfs -cat /wanhe/info
 jiangsuwanhe
 jiangsuwanhe

3.9 -chmod 功能:更改文件所属权限。

# ./hdfs dfs -ls /wanhe
-rw-r--r--   2 root supergroup         51 2018-09-12 22:13 /wanhe/info
# ./hdfs dfs -chmod 777 /wanhe/info
# ./hdfs dfs -ls /wanhe
-rwxrwxrwx   2 root supergroup         51 2018-09-12 22:13 /wanhe/info

3.10 -cp 功能:实现文件的拷贝。

将/wanhe/info拷贝到/tmp下:
# ./hdfs dfs -cp /wanhe/info /tmp/
# ./hdfs dfs -ls /tmp
-rw-r--r--   2 root supergroup         51 2018-09-12 22:20 /tmp/info

3.11 -mv 功能:移动文件。

将/wanhe/info移动到 /user下
# ./hdfs dfs -mv /wanhe/info /user/
# ./hdfs dfs -ls /wanhe
空
# ./hdfs dfs -ls /user
-rwxrwxrwx   2 root supergroup         51 2018-09-12 22:13 /user/info

3.12 -df 功能:统计文件系统的可用空间信息。

# ./hdfs dfs -df -h /
Filesystem            Size   Used  Available  Use%
hdfs://master:9000  17.5 G  352 K     11.4 G    0%

3.13 -du 功能:统计文件夹的大小信息。

# ./hdfs dfs -du /user
51  /user/info

3.14 -count 功能: 统计一个指定目录下的文件数量。

# ./hdfs dfs -count /user
 2            1                 51 /user
 第一列2表示/user/下文件夹的数量,第二列1表示/user/下文件的个数。51表示/user/目录下所有文件占用的磁盘容量(不计算副本个数)。

4、总结

? HDFS中的命令行操作类似于linux命令,熟练使用linux命令便可以熟练的使用命令行操作HDFS。后面我们将连载大数据系列博客,欢迎关注和交流。




? 本文中所有安装软件等更多福利请入群后向管理员获取。

QQ群号:560819979

敲门砖(验证信息):信天游

原文地址:http://blog.51cto.com/13477015/2175037

时间: 2024-10-12 16:23:36

大数据之HDFS命令行基本操作的相关文章

Mysql命令行基本操作

本文记录的是windows7系统下Mysql的命令行基本操作. 一.Mysql启动与登录 1. Mysql启动: 通过运行mysql安装目录下的/bin/mysqld.exe文件来启动Mysql服务.在命令行中进入mysql安装目录下的bin目录,执行命令: mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server X.Y\my.ini"(指定配置文件,配置文件的位置根据具体情况而定) 即可启动mysql服务.为了以后开启m

大数据测试之hadoop命令大全

大数据测试之hadoop命令大全 1.列出所有Hadoop Shell支持的命令  $ bin/hadoop fs -help2.显示关于某个命令的详细信息  $ bin/hadoop fs -help command-name3.用户可使用以下命令在指定路径下查看历史日志汇总  $ bin/hadoop job -history output-dir这条命令会显示作业的细节信息,失败和终止的任务细节.4.关于作业的更多细节,比如成功的任务,以及对每个任务的所做的尝试次数等可以用下面的命令查看 

HDFS命令行操作 和 api操作

HDFS,是Hadoop Distributed File System的简称,是Hadoop抽象文件系统的一种实现.Hadoop抽象文件系统可以与本地系统.Amazon S3等集成,甚至可以通过Web协议(webhsfs)来操作.HDFS的文件分布在集群机器上,同时提供副本进行容错及可靠性保证.例如客户端写入读取文件的直接操作都是分布在集群各个机器上的,没有单点性能压力. HDFS相关的搭建可以看我前面的一篇博文,我们今天主要来讲下怎么操作hdfs的api和 hdfs命令行, java内操作H

BCP是SQL Server中负责导入导出数据的一个命令行工具

BCP是SQL Server中负责导入导出数据的一个命令行工具,它是基于DB-Library的,并且能以并行的方式高效地导入导出大批量的数据.BCP可以将数据库的表或视图直接导出,也能通过SELECT FROM语句对表或视图进行过滤后导出.在导入导出数据时,可以使用默认值或是使用一个格式文件将文件中的数据导入到数据库或将数据库中的数据导出到文件中. 下面将详细讨论如何利用BCP导入导出数据. 1. BCP的主要参数介绍 BCP共有四个动作可以选择. (1) 导入. 这个动作使用in命令完成,后面

HDFS命令行及JAVA API操作

查看进程 jps 访问hdfs: hadoop-root:50070 hdfs bash命令: hdfs dfs <1>   -help:  显示命令的帮助的信息 <2>  -mkdir:创建一个新目录 -p -mkdir -p /test1/test2:创建目录,p可以创建不存在的父路径 <3> -ls:显示当前目录下的所有文件(-ls -R) -R:递归地查看   <4>   -put LICENSE.txt /test 将本地文件上传到HDFS上  

大数据之pig 命令

1.pig与hive的区别 pig和hive比较类似的,都是类sql的语言,底层都是依赖于hadoop    走的mapreduce任务.    pig和hive的区别就是,想要实现一个业务逻辑的话,使用pig需要一步一步操作    而使用hive的话一条SQL就可以搞定.    如果想在很短时间内获取一个比较复杂的业务逻辑处理结果的话,建议使用pig.    如果需要定时执行的一些任务,建议使用hive. 2:pig和mapreduce对比 pig优点:针对一些基本的处理逻辑,已经做好了封装,

svn 命令行基本操作

以下是我常用到的svn 命令行,整理了一下,这东西版本控制上很有用,所以不会不行,当然,你也可以选择一些svn图形界面的工具 0 查看当前工作目录svn 状态 简写:svn st 1.将文件checkout到本地目录svn checkout path(path是服务器上的目录)简写:svn co 2.往版本库中添加新的文件svn add file 3.将改动的文件提交到版本库svn commit -m “LogMessage” [-N] [--no-unlock] PATH(如果选择了保持锁,就

大数据(hdfs集群及其集群的高级管理)

#### 大数据课程第二天 伪分布式hadoop的启动停止脚本[使用] sbin/hadoop-daemon.sh start namenode sbin/hadoop-daemon.sh start datanode sbin/yarn-daemon.sh start resourcemanager sbin/yarn-daemon.sh start nodemanager ? shell脚本 xxx.sh ls mkdir hadoop-start.sh sbin/hadoop-daemon

HBase命令行基本操作

关于HBase [[email protected] root]$ hbase Usage: hbase [<options>] <command> [<args>] Options: --config DIR Configuration direction to use. Default: ./conf --hosts HOSTS Override the list in 'regionservers' file Commands: Some commands tak