HDFS的基本命令格式为:hadoop fs -cmd <args>【cmd即具体的命令】
1、hadoop fs -ls hdfs路径
例:hadoop fs -ls / 列出hdfs文件系统根目录下的目录和文件
hadoop fs -ls /logs 列出hdfs文件系统logs目录下的目录和文件
2、hadoop fs -put 源文件 hdfs路径 【目标路径一定要确认存在】
例:hadoop fs -put /home/logs/test.log /dfs/tmp 将test.log上传到hdfs的tmp目录下
3、hadoop fs -mkdir 文件夹path 【path只能一级一级的建目录,父目录不存在的话会报错】
例:hadoop fs -mkdir /dfs/testdir 在dfs目录下创建testdir路径
4、hadoop fs -moveFromLocal 源文件 hdfs路径
例:hadoop fs -moveFromLocal /home/logs/test.log /dfs/tmp 将test.log文件移动到tmp路径下,成功之后删除源文件
5、hadoop fs -copyFromLocal 多个源文件 hdfs路径
例:hadoop fs -copyFromLocal /home/log/one.log /home/log/two.log /dfs/tmp 将log文件复制到tmp路径下
6、hadoop fs -get hdfs源文件 目标文件/目标路径
例:hadoop fs -get /dfs/dfs.log /home/log/dfs.log | hadoop fs -get /dfs/dfs.log /home/log/
将hdfs文件dfs.log复制到本地/home/log下,文件名相同会提示文件已存在,反之会复制到本地
hadoop fs -get /dfs/dfs01.log /dfs/dfs02.log /home/log
将dfs01.log、dfs02.log复制到本地/home/log下
7、hadoop fs -cp hdfs源文件名 hdfs目标文件名
例:hadoop fs -cp /dfs/dfs.log /dfs/dfs.log.bak
将dfs.log重新命名为dfs.log.bak,源文件还存在,目标文件不能提前存在,否则失败
8、hadoop fs -mv hdfs源文件1 hdfs源文件2 hdfs目标文件夹
例:hadoop fs -mv /dfs/dfs.log /dfs/dfs.log.bak /dfs/log 将两个log文件移动到/dfs/log路径下,源文件不存在
9、hadoop fs -count hdfs路径
例:hadoop fs -count /dfs/log 统计/dfs/log路径下的目录个数,文件个数,文件总计大小,输入路径
10、hadoop fs -du hdfs路径
例:hadoop fs -du /dfs/log 显示log路径下的每个文件夹和文件的大小
11、hadoop fs -du -s hdfs路径
例:hadoop fs -du -s /dfs/log 显示log路径下的所有文件的总大小
12、hadoop fs -du -h hdfs路径
例:hadoop fs -du -h /dfs/log 显示log路径下的每个文件夹和文件的大小,大小用方便阅读的形式表达