本文主要是介绍hdfs常用shell命令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1、创建文件夹
hadoop fs -mkdir [-p] ...
path 为待创建的目录
-p选项的行为与Unix mkdir -p非常相似,它会沿着路径创建父目录。
hdfs dfs -mkdir /temp
2、查看指定目录下内容
hadoop fs -ls [-h] [-R] [ ...]
path 指定目录路径
-h 人性化显示文件size
-R 递归查看指定目录及其子目录
hdfs dfs -ls /
3、上传文件到HDFS指定目录下
hadoop fs -put [-f] [-p] ...
-f 覆盖目标文件(已存在下)
-p 保留访问和修改时间,所有权和权限。
localsrc 本地文件系统(客户端所在机器)
dst 目标文件系统(HDFS)
hdfs dfs -put /usr/local/soft/jdk-8u331-linux-x64.tar.gz /shujia/
类似命令: hdfs dfs -copyFromLocal 源文件夹 目标文件夹 #copyFromLocal
作用同put hdfs dfs -moveFromLocal 源文件夹 目标文件夹 #上传后删除本地
4、查看HDFS文件内容
hadoop fs -cat ...
读取指定文件全部内容,显示在标准输出控制台。
注意:对于大文件内容读取,慎重。
hdfs dfs -cat /shujia/students.txt
5、下载HDFS文件
hadoop fs -get [-f] [-p] ...
下载文件到本地文件系统指定目录,localdst必须是目录
-f 覆盖目标文件(已存在下)
-p 保留访问和修改时间,所有权和权限。
hdfs dfs -get /shujia/jdk-8u331-linux-x64.tar.gz
类似命令 hdfs dfs -copyToLocal 源文件夹 目标文件夹 #copyToLocal
作用同get hdfs dfs -moveToLocal 源文件夹 目标文件夹 #get后删除源文件
6、拷贝HDFS文件
hadoop fs -cp [-f] ...
-f 覆盖目标文件(已存在下)
hdfs dfs -cp /shujia/jdk-8u331-linux-x64.tar.gz /aa
7、追加数据到HDFS文件中
hadoop fs -appendToFile ...
将所有给定本地文件的内容追加到给定dst文件。
dst如果文件不存在,将创建该文件。
如果为-,则输入为从标准输入中读取。
hdfs dfs -appendToFile a.txt /shujia/students.txt
8、HDFS数据移动操作
hadoop fs -mv ...
移动文件到指定文件夹下
可以使用该命令移动数据,重命名文件的名称
hdfs dfs -mv /shujia/students.txt /aa/bb/
9、创建文件
hdfs dfs -touchz path
该命令不可递归创建文件,即当该文件的上级目录不存在时无法创建该文件,如果重复创建会覆盖原有的内容
hdfs dfs -touchz /hello.txt
10、查看磁盘使用情况
hdfs dfs -du path
查看path下的磁盘情况,单位字节
hdfs dfs -du /
11、修改权限
hdfs dfs -chmod [权限参数][拥有者][:[组]] path
hdfs dfs -chmod 777 /hello.txt
12、删除文件
hdfs dfs -rm 目标文件 #rm不可以删除文件夹
hdfs dfs -rm -R 目标文件 #递归删除(慎用)
hdfs dfs -rm /hello.txt hdfs dfs -rm -R /aa
这篇关于hdfs常用shell命令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!