文章目录
HDFS基本文件操作命令
HDFS常用命令
hdfs 操作行为是在hdfs文件系统服务上,命令基本与linux接近
查看文件
hdfs dfs -ls [路径]
上传文件/文件夹
put方法
#上传文件,文件夹均可,如果上传的文件出现重复,不会有覆盖操作
hdfs dfs -put [需要上传的本地文件] [hdfs路径]
正常上传与重复上传见下图
moveFromLocal方法
#本地文件移动到hdfs且删除本地文件,如果文件重复不会覆盖文件
hdfs dfs -moveFromLocal [需要上传的本地文件] [hdfs路径]
copyFromLocal方法
#hdfs上拷贝本地文件,与moveFromLocal区别很明显是拷贝本地文件不会删除,同样hdfs上同名文件也不会覆盖
hdfs dfs -copyFromLocal [需要上传的本地文件] [hdfs路径]
删除文件/文件夹
#只能删除文件
hdfs dfs -rm [hdfs上要删除的文件路径]
#文件文件夹均可删除 且删除文件夹为递归删除
hdfs dfs -rm -r [hdfs上要删除的文件夹]
# 只能删除空文件夹
hdfs dfs -rmdir [hdfs上要删除的目录路径]
删除文件
删文件夹
创建文件
# 创建空文件,如果要创建的文件存在不会有覆盖操作,但是会更新时间为当前时间(如果集群时间节点不同步,会更新为你当前执行这条命令所在的节点时间)
hdfs dfs -touch [创建的文件]
# 创建空文件,如果要创建的文件存在且不为空则返回提示不做操作,如果要创建的文件存在且为空效果与 touch一样
hdfs dfs -touchz [创建的文件]
创建文件夹
# 创建文件夹,文件夹已存在无法创建,无法递归创建
hdfs dfs -mkdir [创建的文件夹]
# 递归创建文件夹
hdfs dfs -mkdir -p [创建的文件夹]
普通创建
递归创建文件夹
移动文件
#hdfs服务内进行文件移动
hdfs dfs -mv [源文件] [目的文件]
下载文件
get方法
#hdfs上的文件下载到本机 -f覆盖本机重名文件
hdfs dfs -get -f [hdfs上文件] [本机路径]
moveToLocal方法
3.2.4hadoop并未实现此方法
copyToLocal方法
#hdfs上文件拷贝到本机,-f覆盖本机重命名文件
hdfs dfs -copyToLocal -f [hdfs上文件] [本机路径]
拷贝文件
#hdfs上文件拷贝 -f覆盖
hdfs dfs -cp [hdfs上拷贝文件] [hdfs目标位置]
修改权限
#修改hdfs上文件权限 权限级别根据实际需求修改
hdfs dfs -chmod 777 [目标文件或文件夹]
备注:r 4,w 2,x 1,
用户,组,其他
7 7 7
查看文件
可通过管道符配合grep使用
#查看hdfs上文件跟在linux一样可以用cat,tail
hdfs dfs -cat/-tail [目标文件] |
统计
hdfs dfs -count [目标文件]
空间大小查看
# 显示当前节点,总节点大小
hdfs dfs -du -h [目标文件]
hdfs dfs -df -h [目标文件]
查找文件
#使用finde
hdfs dfs -find [路径] -name [条件]
文件完整性校验
#如果文件传输无误此致固定,可以根据此判断文件是否传输有损
hdfs dfs -checksum [目标文件]