shell 命令操作 hadoop 之前多少提及过,这里做个总结。

 

shell with hdfs

基本命令

bin/hadoop fs    大于下面的命令
bin/hdfs dfs    dfs 是 fs 的实现类

shell 操作 hadoop 就是 上面的命令 加  “-” 再加 linux 命令

 

常用命令

sbin/start-dfs.sh      # 启动 hdfs 集群 
sbin/stop-dfs.sh        # 关闭 hdfs 集群
hadoop fs -help rm    # 输出该命令的参数

hadoop fs -ls /        # 显示目录信息  /是 hdfs 的根目录
hadoop fs -mkdir -p /a/b/c    # -p 创建多层目录
hadoop fs -moveFromLocal localfile hdfsdir    # 从本地文件剪切到 hdfs
hadoop fs -copyFromLocal localfile hdfsdir    # 把本地文件拷贝到 hdfs
hadoop fs -put localfile hdfsdir     # 把本地文件上传到 hdfs,等同于 copyFromLocal

hadoop fs -copyToLocal hdfsfile localdir    # 把 hdfs 文件拷贝到本地
hadoop fs -get hdfsfile localdir    # 把 hdfs 文件下载到本地,等同于 copyToLocal

hadoop fs -cp hdfsfile hdfsfile2    # 从 hdfs 的一个路径拷贝到另一路径 
hadoop fs -mv hdfsfile hdfsdir    # 从 hdfs 的一个路径移动到另一路径 

hadoop fs -getmerge hdfsdir/* localfile   # 合并下载多个文件,比如 hdfsdir 下有 log1、log2、log3,会把3个文件合并,并且下载

hadoop fs -appendToFile localfile hdfsfile    # 把一个本地文件追加到 hdfs 文件末尾
hadoop fs -cat hdfsfile    # 打印 hdfs 文件

hadoop fs -chgrp
hadoop fs -chown
hadoop fs -chmod    # 这 3 个命令用法同 linux

hadoop fs -tail hdfsfile    # 显示一个文件末尾

hadoop fs -rm hdfsfile or hdfsdir    # 删除文件夹或者文件
hadoop fs -rmdir hdfsdir     # 删除空目录,注意只能是空目录

hadoop fs -du -s -h hdfsdir # 统计文件夹大小 hadoop fs -setrep number hdfsfile # 设置 hdfs 文件的副本数