以下所有命令前缀皆可替换:hdfs dfs< - > hadoop fs

查看文件常用命令

命令格式

hdfs dfs -ls path   	#查看文件列表 
hdfs dfs -ls -R path   	#递归查看文件列表 
hdfs dfs -lsr path   	#递归查看文件列表(同上)
hdfs dfs -du [-s] [-h] path   	#查看path下的磁盘情况,单位字节

使用示例

hdfs dfs -ls /    			#查询/目录下的所有文件和文件夹
hdfs dfs -ls -R /test    	#以递归的方式查询/test目录下的所有文件
hadoop fs -du -s -h /a.txt	#查看文件信息

创建文件夹

命令格式

hdfs dfs -mkdir path
hdfs dfs -mkdir hdfs://127.0.0.1/path	#同上
hdfs dfs -mkdir -p path					#递归创建文件夹

使用用例

hdfs dfs -mkdir /user/iron    #该命令可递归创建文件夹,不可重复创建

复制文件和目录

命令格式

hdfs dfs -cp 源目录 目标目录

使用示例

hdfs dfs -cp /user/iron /user/iron01    	#该命令会将源目录的整个目录结构都复制到目标目录中
hdfs dfs -cp /user/iron/* /user/iron01   	#该命令只会将源目录中的文件及其文件夹都复制到目标目录中

移动文件和目录

命令格式

hdfs dfs -mv 源目录 目标目录

使用示例

hdfs dfs -mv /user/iron /user/iron01
hdfs dfs -mv /user/aa.txt /user/bb.txt   #将/user/aa.txt文件重命名为/user/bb.txt

赋予权限

命令格式

hdfs dfs -chown 属主:属组 path	 #改变文件属组、主
hdfs dfs -chmod -777 /			#授予相应权限
hdfs dfs -chmod -R -777 /		#递归授权

使用示例

hdfs dfs -chmod 777 /user/*    #将user目录下的所用文件及其文件夹(不包含子文件夹中的文件)赋予777权限
hadoop fs  -chown  qiandao:konan   /sanguo/shuguo.txt	#改变改文件属组、主

上传文件

命令格式

hdfs dfs -put 源文件夹 目标文件夹

使用示例

hdfs dfs -put /home/hadoop01/iron/* /user/iron01    #该命令上传Linux文件系统中iron文件夹中的所有文件(不包括文件夹) 
类似命令: 
hdfs dfs -copyFromLocal 源文件夹 目标文件夹   #copyFromLocal作用同put 
hdfs dfs -moveFromLocal 源文件夹 目标文件夹   #上传后删除本地

下载文件

命令格式

hdfs dfs -get 源文件夹 目标文件夹

使用示例

hdfs dfs -get /user/iron01 /home/hadoop01/iron    	#该命令下载hdfs文件系统中的iron01整个文件夹到Linux文件系统中 
hdfs dfs -get /user/iron01/* /home/hadoop01/iron    #该命令下载hdfs文件系统中的iron01整个文件夹到Linux文件系统中(不包含文件夹) 

类似命令 
hdfs dfs -copyToLocal 源文件夹 目标文件夹   #copyToLocal作用同get 
hdfs dfs -moveToLocal 源文件夹 目标文件夹   #get后删除源文件

查看追加文件内容

命令格式

hadoop fs -cat path   	#从头查看这个文件 
hadoop fs -text path	#同上
hadoop fs -tail path   	#从尾部查看最后1K

使用示例

hadoop fs -cat /userjzl/home/book/aa.txt   #查看/userjzl/home/book目录下文件aa.txt的内容(将-cat 换成-text效果一样)
hadoop fs -tail /userjzl/home/book/aa.txt

追加拷贝文件

命令格式

hdfs dfs -appendToFile 本地文件 目标文件	#追加文件到hdfs上的已有文件中

hdfs dfs -cp 源文件1 目标文件2				 #hdfs间文件拷贝

使用示例

hdfs dfs -appendToFile /opt/dd.txt /opt/cc.txt /test/hellow.txt	#追加本地bb.txt、cc.txt到hdfs上的hellow.txt中

hdfs dfs -cp /test/test2/test123/hellow.txt /test/

删除文件

命令格式

hdfs dfs -rm 目标文件    	#rm不可以删除文件夹
hdfs dfs -rm -R 目标文件   	#递归删除(慎用)

使用示例

hdfs dfs -rm /user/test.txt   		#删除test.txt文件 
hdfs dfs -rm -R /user/testdir    	#递归删除testdir文件夹