HDFS 提供 shell 命令行客户端,使用方法如下:
hdfs
hadoop fs 还有以下的命令行操作:
hadoop fs
-help
功能:输出这个命令参数手册
示例:hadoop fs -help ls
-ls
功能:显示目录信息
示例: hadoop fs -ls hdfs://bigdata02:9000/
备注:这些参数中,所有的 hdfs 路径都可以简写成 hadoop fs -ls / 等同上条命令的效果
-mkdir
功能:在 hdfs 上创建目录
示例:hadoop fs -mkdir -p /aa/bb/cc/dd
-put
功能:等同于 copyFromLocal,进行文件上传
示例:hadoop fs -put /home/bigdata/soft/hadoop-2.7.7.tar.gz /h7.tar.gz
-get
功能:等同于 copyToLocal,就是从 hdfs 下载文件到本地
示例:hadoop fs -get /aaa/jdk.tar.gz
-getmerge
功能:合并下载多个文件
示例:如hdfs的目录 /aaa/下 有多个文件:wordcount1.txt, wordcount2.txt,wordcount3.txt,...
hadoop fs -getmerge /aa/*.txt /home/bigdata/data/wordcount.txt
-cp
功能:从 hdfs 的一个路径拷贝到 hdfs 的另一个路径
示例: hadoop fs -cp /aa/wordcount1.txt /a/wordcount10.txt
-mv
功能:在 hdfs 目录中移动文件
示例: hadoop fs -mv /aa/wordcount1.txt /a/
-rm
功能:删除文件或文件夹
示例:fs -rm -r /aa/wordcount2.txt
-rmdir
功能:删除空目录
示例:hadoop fs -rmdir /aa/bb/cc/dd
-moveFromLocal
功能:从本地剪切到 hdfs
示例:hadoop fs - moveFromLocal /home/hadoop/a.txt /aa/bb/cc/dd
-moveToLocal
功能:从 hdfs 剪切到本地
示例:hadoop fs - moveToLocal /aa/bb/cc/dd /home/hadoop/a.txt
-copyFromLocal
功能:从本地文件系统中拷贝文件到 hdfs 文件系统去
示例:hadoop fs -copyFromLocal ./jdk.tar.gz /aaa/
-copyToLocal
功能:从 hdfs 拷贝到本地
示例:hadoop fs -copyToLocal /aaa/jdk.tar.gz
-appendToFile
功能:追加一个文件到已经存在的文件末尾
示例:hadoop fs -appendToFile ./hello.txt
hdfs://bigdata02:9000/hello.txt 可以简写为: hadoop fs -appendToFile ./hello.txt /hello.txt
-cat
功能:显示文件内容 hadoop fs -cat /wordcount.txt
-tail
功能:显示一个文件的末尾
示例:hadoop fs -tail /wordcount.txt
-text
功能:以字符形式打印一个文件的内容
示例:hadoop fs -text /wordcount.txt
-chgrp -chmod -chown
功能:linux 文件系统中的用法一样,对文件所属权限
示例: hadoop fs -chmod 666 /wordcount.txt
hadoop fs -chown someuser:somegrp /wordcount.txt
-df
功能:统计文件系统的可用空间信息
示例:hadoop fs -df -h /
-du
功能:统计文件夹的大小信息
示例:hadoop fs -du -s -h /aa/*
-count
功能:统计一个指定目录下的文件节点数量
示例:hadoop fs -count /aa/
-setrep
功能:设置 hdfs 中文件的副本数量
示例:hadoop fs -setrep 3 /aa/wordcount3.txt
补充:查看 dfs 集群工作状态的命令 hdfs dfsadmin -report