前言
主要涉及HDFS shell操作命令,包罗创建目录或文件、查看目录或文件、上传和拷贝文件到HDFS上、追加数据到HDFS上、从HDFS上下载文件到Linux本地、合并HDFS上多个文件并下载、删除HDFS上的文件、查看各种命令的用法等。
一、HDFS的相关命令
1、在HDFS创建目录
- #hdfs dfs -mkdir /要创建的目录
- hdfs dfs -mkdir /data
- # -p表示创建多级目录,父目录和子目录一起
- hdfs dfs -mkdir -p /usr/opt/data
复制代码 2、查看当前目录
- #ls 目录名xxx:列出目录名下的可见文件
- #查看data目录下的所有可见内容
- hdfs dfs -ls /usr/opt/data
- #查看hdfs根目录下的内容
- hdfs dfs -ls /
- #查看本地Linux系统根目录下的内容
- hdfs dfs -ls file:/// #相当于 ls /
- #查看hdfs上目录
- hdfs dfs -ls hdfs://hadoop100:8020/
- #显示文件size
- hdfs dfs -ls -h /data
复制代码 3、查看目录与子目录
- #查看根目录下的目录以及目录下的子目录
- hdfs dfs -ls -R/
复制代码 4、查看文件的内容
- #-cat命令:将文件内容显示出来(适合小文件)
- hdfs dfs -cat /usr/opt/data/a.txt
- #-haed命令:查看文件前1KB的内容
- hdfs dfs -head /usr/opt/data/a.txt
- #-tail命令:查看文件最后1KB的内容
- hdfs dfs -tail /usr/opt/data/a.txt
- #-tail -f命令:可以动态显示文件中追加的内容
- #在Linux系统中
- tail -f 1.txt
- #hdfs
- hdfs dfs -tail -f /usr/opt/data/a.txt
复制代码 5、创建文件
- #本地创建文件 touch
- touch a.txt b.txt c.txt
- #创建不存在的文件,连续创建多个空文件,用空格隔开
复制代码 6、上传和拷贝文件
- #-put命令:从本地文件系统拷贝到HDFS,其中/xxx/xxx/为hdfs中的路径
- hdfs dfs -put a.txt /usr/opt/data
- #-copyFromLocal命令:从本地文件系统拷贝到HDFS,效果与-put命令等同
- hdfs dfs -copyFromLocal b.txt /usr/opt/data
- #-moveFromLocal命令:从本地文件系统剪切到HDFS,命令执行完后本地文件就没有了
- hdfs dfs -moveFromLocal c.txt /usr/opt/data
复制代码 7、追加数据到HDFS文件中
- #-appendToFile命令:将所有给定本地文件的内容追加到hdfs文件,hdf文件不存在,则创建该文件
- hdfs dfs -appendToFile d.txt /usr/opt/data/a.txt
复制代码 8、下载文件到Linux本地系统
- #-get命令:获取文件
- #将hdfs上的a.txt文件,下载到本地Linux系统的root目录下
- hdfs dfs -get /usr/opt/data/a.txt /root/
复制代码 9、合并HDFS上多个小文件,并下载到本地
- #-getmerge命令:将hdfs中的文件合并到本地文件系统的单个文件
- #将hdfs上data目录下的文件,合并,并下载到Linux系统的指定目录下
- hdfs dfs -getmerge /usr/opt/data/ /opt/merge
- #-getmerge -nl命令:在每个文件末尾添加换行符
- #-getmerge -skip-empty-file命令:跳过空文件进行合并
复制代码 10、删除HDFS上的指定目录下的文件
- #删除HDFS上usr/opt/data/目录下的a.txt文件
- #-rm命令:删除文件,-r:目录/子目录下所有内容
- hdfs dfs -rm -r /usr/opt/data/a.txt
复制代码 11、删除HDFS上的指定目录
- #删除HDFS上/usr/opt/data目录的data目录
- hdfs dfs -rm -r /usr/opt/data
复制代码 12、查看命令的详细用法
- #-help命令:输出rm命令参数
- hdfs dfs -help rm
复制代码 13、查看HDFS磁盘空间
- #-df -h命令:显示文件系统的容量,可用空间和已用空间
- hdfs dfs -df -h /
复制代码 14、查看HDFS文件使用的空间量
- #-du -s命令:表示显示指定路径文件长度的汇总摘要,不是单个文件的摘要
- hdfs dfs -du -s
- #-du -h命令:人性化的显示文件大小
- hdfs dfs -du -s -h /usr/opt/data
复制代码 15、HDFS数据移动操作
- #-mv命令:移动文件到指定文件夹下,并且重命名文件的名称
- hdfs dfs -mv /usr/opt/data/a.txt /tmp/aaa.txt
复制代码 16、修改HDFS文件副本个数
- #-setrep -R:修改文件夹下及其所有
- #-setrep -w:客户端是否等待副本修改完毕
- hdfs dfs -settrep 2 /usr/opt/data/a.txt
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |