Hadoop之HDFS命令可参考如下链接:
Hadoop文件系统shell
Hadoop文件系统shell官方文档
HDFS常用命令大集:
注意:这些命令是区分大小写的
1、put
Usage: hdfs dfs -put <localsrc> ... <dst>
Copy single src, or multiple srcs from local file system to the destination file system. Also reads input from stdin and writes to destination file system.
hdfs dfs -put localfile /user/hadoop/hadoopfile
hdfs dfs -put localfile1 localfile2 /user/hadoop/hadoopdir
hdfs dfs -put localfile hdfs://nn.example.com/hadoop/hadoopfile
hdfs dfs -put - hdfs://nn.example.com/hadoop/hadoopfile Reads the input from stdin.
eg:hdfs dfs -put test2.txt /usr/input/
2、ls
Usage: hdfs dfs -ls [-R] <args>
eg:hdfs dfs -ls /user/hadoop/file1
3、cat
Usage: hdfs dfs -cat URI [URI ...]
eg:hdfs dfs -cat /usr/input/test2.txt
hdfs dfs -cat hdfs://nn1.example.com/file1 hdfs://nn2.example.com/file2
hdfs dfs -cat file:///file3 /user/hadoop/file4
4、rm
Usage: hdfs dfs -rm [-f] [-r|-R] [-skipTrash] URI [URI ...]
Options:
-f选项不会显示信息或者在文件不存在导致报错的情况下修改退出状态。
-R选项递归的删除子文件和目录里的内容。
-r选项等同于-R。
-skipTrash选项会略过回收站删除指定文件。当删除超过quota配额的目录文件时这个选项会很有用。
eg:hdfs dfs -rm /usr/input/test2.txt
hdfs dfs -rm hdfs://nn.example.com/file /user/hadoop/emptydir
5、appendToFile
Usage: hdfs dfs -appendToFile <localsrc> ... <dst>
从本地文件系统添加一个单一的src或者多个srcs到目标文件系统。同时也可以把标准stdin的数据读入添加到目标文件系统。
hdfs dfs -appendToFile localfile /user/hadoop/hadoopfile
hdfs dfs -appendToFile localfile1 localfile2 /user/hadoop/hadoopfile
hdfs dfs -appendToFile localfile hdfs://nn.example.com/hadoop/hadoopfile
hdfs dfs -appendToFile - hdfs://nn.example.com/hadoop/hadoopfile 从stdin读取数据。
eg:hadoop fs -appendToFile test2.txt /usr/input/test.txt
6、get
Usage: hdfs dfs -get [-ignorecrc] [-crc] <src> <localdst>
拷贝文件到本地文件系统。如果在CRC校检失败的文件可以加-ignorecrc选项。使用-crc选项,文件和CRC都可以被拷贝。
eg: hdfs dfs -get /user/hadoop/file localfile
hdfs dfs -get hdfs://nn.example.com/user/hadoop/file localfile
7、mkdir
Usage: hdfs dfs -mkdir [-p] <paths>
eg: hdfs dfs -mkdir /user/hadoop/dir1 /user/hadoop/dir2
hdfs dfs -mkdir hdfs://nn1.example.com/user/hadoop/dir hdfs://nn2.example.com/user/hadoop/dir
8、touchz
Usage: hdfs dfs -touchz URI [URI ...]
创建一个空文件。
eg:hdfs dfs -touchz pathname
hdfs dfs -touchz /usr/input/a.txt /usr/input/b.txt
9、查找文件并排序
查找/apps/hbase/data/data/default文件大小大于1G的文件并排序
hdfs dfs -du /apps/hbase/data/data/default | awk -F ' ' '{num=$1/1024/1024/1024; if(num>1){printf "%.2fGB\t\t%s\n", num, $2} }' | sort -nr
10、修改备份数
hadoop fs -setrep -R 2 /test/ : 修改/test目录下文件备份数为2,一共保存两份数据
查看文件备份数
hdfs dfs -ls /test/