AmosCloud

Library

Have a Question?

If you have any question you can ask below or enter what you are looking for!

HDFS

HDFS

HDFS命令行操作

  • 两种语法:

    1. hadoop fs 命令
    2. hdfs dfs 命令
  • 命令操作

-help:输出这个命令参数
-ls: 显示目录信息
-mkdir:在hdfs上创建目录
# 上传本地文件到HDFS集群
-moveFromLocal从本地剪切粘贴到hdfs
-copyFromLocal:从本地文件系统中拷贝文件到hdfs路径去
-put:等同于copyFromLocal

# 语法
hdfs dfs -put  本地路径 ...  集群路径
# 下载HDFS集群文件到本地文件系统
-moveToLocal
-copyToLocal:从hdfs拷贝到本地
-get:等同于copyToLocal,就是从hdfs下载文件到本地

# 语法
hdfs dfs -get  集群路径 ...  本地路径
-appendToFile :追加一个文件到已经存在的文件末尾

# 语法
hdfs dfs -appendToFile 本地文件1 本地文件2集群文件
# 将多个本地文件追加到集群文件的末尾
# 通常用于快速拼接多个小文件

-getmerge  :合并下载多个文件,比如hdfs的目录 /hj/下有多个文件:log.1, log.2,log.3,...
# 语法
hdfs dfs -getmerge 集群路径1 集群路径2 .. 本地路径
# 将多个集群上的文件合并并下载到本地

-cat :显示文件内容
-tail:显示一个文件的末尾

-chgrp
-chmod
-chown:linux文件系统中的用法一样,修改文件所属权限

# 复制和移动 与Linux类似可以同时进行重命名操作,
-cp :从hdfs的一个路径拷贝到hdfs的另一个路径
-mv:在hdfs目录中移动文件

-rm:删除文件或文件夹
-rmdir:删除空目录

-df :统计文件系统的可用空间信息
-du : 统计文件夹的大小信息

-setrep:设置hdfs中文件的副本数量
# hdfs允许随时根据需要调整文件的副本数
-setrep  短整数  文件
  • 查看集群所有服务状态
#!/bin/bash

#脚本用于获取集群所有机器的JVM进程状态

# for 循环变量 in 集合 ;do
#   循环体
# done

HOSTS=`cat /etc/hosts | grep 192.168.30 | awk '{print $2}'`

for HOST in $HOSTS
do
  echo "----${HOST}的JVM进程----"
  ssh $HOST /opt/jdk1.8/bin/jps | grep -v Jps
done
  • 配置Hadoop的windows开发环境

    1. winutils.exe
      先创建一个目录C:\hadoop-2.7.7
      在当前目录中再创建一个C:\hadoop-2.7.7\bin目录
      拷贝文件winutils.exeC:\hadoop-2.7.7\bin目录中
      添加windows环境变量
      HADOOP_HOME
      hadoop-2.7.7目录

    2. hadoop.dll
      hadoop.dll拷贝C:\Windows\System32