- HDFS shell中三种命令的区别
- 命令分别是:hadoop fs、hadoop dfs、hdfs dfs
- hadoop fs:使用面最广,可以操作多种不同的文件系统(如local FS、HFTP FS、s3fs等)。
- hadoop dfs:已被弃用,用
hdfs df
代替了。- hdfs dfs:适用于与HDFS相关的所有操作(包括与本地文件系统间的命令),是建议使用的命令
- 查看、创建、删除
查看文件列表;ls后面可以添加路径看某个路劲下面有的文件目录
hadoop fs -ls [path]
递归显示文件目录:hadoop fs -ls -R
查看文件内容
查看前10行:hadoop fs -cat [filename] | head -10
查看尾10行:hadoop fs -cat [filename] | tail -10
查看文件行数等信息:hadoop fs -cat [filename] | wc -l
注:-c 统计字节数;-l 统计行数;-m 统计字符数;-w 统计字数;-L 打印最长行的长度。filename支持通配符。查看文件夹/文件大小
hadoop fs -du -h [文件夹所在路径/文件路径]
,-h不要按字节显示大小
hadoop fs -ls -h [文件夹路径/文件路径]
,文件夹中若子文件夹目录过多,可能显示为0创建文件夹
hadoop fs -mkdir [name/path]
例如:hadoop fs -mkdir test; hadoop dfs -mkdir test/file创建文件
hadoop fs -touch [filename]
例如:hadoop fs -touch test/file/a.txt
删除文件
hadoop fs -rm -r [name/path]
-r
表示递归删除文件夹下面所有文件及文件夹,如果只删除某个文件不需要加-r
- 移动、上传、下载
- 将hdfs上的文件从一个目录下移动到另一个目录([sourceURL]既可以是一个文件夹也可以是一个具体文件,包含文件所在的路径)
hadoop fs -mv [sourceURL] [destURL]
例如:hadoop fs -mv test/file/yi test/
;即将文件夹yi移动到test文件夹下- 复制hdfs上某个文件到某个目录。[destURL]可以用空格隔开接多个路径,表示同时复制到多个路径下;[sourceURL]同样可以是带路径的文件夹,也可以是文件
hadoop fs -cp [sourceURL] [destURL]
例如:hadoop fs -cp test/file/yi test/
- 从本地Linux系统上传文件到hdfs上。[sourceURL]为本地文件系统文件所在位置及名称;[destURL]为上传到hdfs的目标路径
hadoop fs -put [sourceURL] [destURL]
例如:hadoop fs -put /home/data/test.txt test/file/
- 从hdfs上下载文件到本地Linux系统上。[sourceURL]为hdfs上所在位置及名称;[destURL]为本地Linux系统中保存下载文件的路径
hadoop fs -get [sourceURL] [destURL]
例如:hadoop fs -get test/file/test.txt /home/data/
网友评论