Hadoop之HDFS常用文件操作命令
命令基本格式:
hadoop fs -cmd < args >
1. ls 列出hdfs文件系统根目录下的目录和文件
hadoop fs -ls /dir
hadoop fs -ls -R /dir --列出hdfs文件系统所有的目录和文件
2.put
hadoop fs -put <local file> <hdfs file> --hdfs file的父目录一定要存在,否则命令不会执行
hadoop fs -put <local file or dir> <hdfs dir> --hdfs dir 一定要存在,否则命令不会执行
hadoop fs -put - <hdfs file> --从键盘读取输入到hdfs file中,按Ctrl+D结束输入,hdfs file不能存在,否则命令不会执行
3.get
hadoop fs -get <hdfs file> <local file or dir> --local file不能和 hdfs file名字不能相同,否则会提示文件已存在,没有重名的文件会复制到本地
hadoop fs -get < hdfs file or dir > ... < local dir >
拷贝多个文件或目录到本地时,本地要为文件夹路径
注意:如果用户不是root, local 路径要为用户文件夹下的路径,否则会出现权限问题
4.rm
hadoop fs -rm < hdfs file > ...
hadoop fs -rm -r < hdfs dir>...
5.mkdir
hadoop fs -mkdir <hdfs path> --只能一级一级的建目录,父目录不存在的话使用这个命令会报错
hadoop fs -mkdir -p <hdfs path> --所创建的目录如果父目录不存在就创建该父目录
6.cp
hadoop fs -cp <hdfs file> <hdfs file> -- 目标文件不能存在,否则命令不能执行,相当于给文件重命名并保存,源文件还存在
hadoop fs -cp <hdfs file or dir> <hdfs dir> --目标文件夹要存在,否则命令不能执行
8.mv 移动
hadoop fs -mv <hdfs file> <hdfs file> --目标文件不能存在,否则命令不能执行,相当于给文件重命名并保存,源文件不存在
hadoop fs -mv < hdfs file or dir >... < hdfs dir >
源路径有多个时,目标路径必须为目录,且必须存在。
注意:跨文件系统的移动(local到hdfs或者反过来)都是不允许的
9.count
hadoop fs -count <hdfs path> --统计hdfs对应路径下的目录个数,文件个数,文件总计大小
10.text
hadoop fs -text < hdsf file>
将文本文件或某些格式的非文本文件通过文本格式输出
11.cat
hadoop fs -cat <hdfs file>/*
hadoop fs -cat /user/hive/back/hs_ods/clientinfo/* >clientinfo.txt -- 将文件保存到local 文件
补充:MR的运行依赖数据地址,如果数据地址不存在,则会报错
12. 在打开的结果中搜索
hadoop dfs -cat /user/hive/warehouse/fundmarket/* |grep '目标'
最新文章
- SQL Server 解读【已分区索引的特殊指导原则】(1)- 索引对齐
- android标题栏上面弹出提示框(二) PopupWindow实现,带动画效果
- sprig里的controller之间的跳转的问题
- Unable to create SVNRepository object
- centos7.x/RedHat7.x重命名网卡名称
- 论文阅读之 Inferring Analogous Attributes CVPR 2014
- C#轻量级企业事务 - TransactionScope
- ISA中的WEB链
- ORACLE的CONNECT和RESOURCE角色权限
- poj 2515 Birthday Cake
- Java异常处理机制以及try-catch-finally-return执行顺序
- 详细介绍Java虚拟机(JVM)
- Vue中结合Flask与Node.JS的异步加载功能实现文章的分页效果
- Python面试常见的问题
- codeforces444A
- python线程中的全局变量与局部变量
- async+await处理异步问题
- jQuery formValidator API
- numpy中pad函数的常用方法
- Android studio 一个项目引入另一个项目作为Libary