HDFS常用命令

摘要:
HDFS常用命令。尽管许多hadoop插件都流行直接或间接操作HDFS,但熟悉HDFS本地操作命令也是有益的。HDFS命令和Linux系统操作命令有许多相似之处。熟悉Linux系统操作的人很容易学习,所以Linux系统是学习大数据的第一个地方。hadoopfs和hdfsdfs命令都可以执行#hdfsdfs help[com]--View hd

HDFS常用命令,虽然现在流行很多hadoop插件,直接或间接操作HDFS,但是熟悉HDFS原生操作命令也是有好处的。HDFS命令和Linux系统操作命令有很多相似之处,对熟悉Linux系统操作的人来说学习很简单,所以大数据入门首先学习Linux系统。hadoop fs 和hdfs dfs 两种命令都可以操作执行。

#hdfs dfs -help [com]                        --查看hdfs帮助
#export HADOOP_USER_NAME=hdfs                --设置hadoop_user_name环境变量,执行命令时可以用hdfs dfs代替 hadoop fs
#hdfs dfs -chown [-R] root:root filepath                 --修改文件或文件夹组
#hdfs dfs -chmod [-R] o-r /dir                   --修改dir目录权限
#hdfs dfs -chgrp [-R] admin /dir                  --修改dir目录所在组,改为admin

#hdfs dfs -ls /    #hadoop fs -ls /                --查看根目录文件
#hdfs dfs -put sourcepath savepath                  --hdfs上传文件,-f 覆盖已有文件;-p 保留原文件属性
#hdfs dfs -get sourcepath savepath                  --hdfs下载文件

#hdfs dfs -cat /input/filename    #hadoop fs -cat /input/filename    --查看文件filename
#hdfs dfs -du -s /input/                        --查看所有文件大小和字节大小
#hdfs dfs -cp /sourcefile /targetfile   #hadoop fs -cp /src /trget     --复制文件,hadoop fs -cp < hdfs file > < hdfs file >
#hdfs dfs -count < hdfs path >                    --统计hdfs对应路径下的目录个数,文件个数,文件总计大小
#hdfs dfs -count /input/test/                      --统计文件夹和文件个数
#hdfs dfs -text < hdsf file>                     --将文本文件或某些格式的非文本文件通过文本格式输出
#hdfs dfs -text /input/log.txt                    --将给定的文件以文本的格式输出,zip、TextRecordInputStream、Avro
#hdfs dfs -getmerge sourcepaths savefilename           --合并文件
#hdfs dfsadmin -report                        --查看HDFS的基本统计信息
#hadoop-deamon.sh start namenode                --单独启动某个服务
#hadoop-daemon.sh start datanode                  --启动一个 DN,先启动datanode节点,再启动nodemanager。
#hadoop-daemon.sh start nodemanager              --启动一个 DN,先启动datanode节点,再启动nodemanager。

#hdfs dfs -mkdir /output/dirname   #hadoop fs –mkdir /dirname   --创建文件夹dirname
#hdfs dfs -touchz /input/filename                   --创建文件filename
#hdfs dfs -appendToFile /appendfile /input/targetfile          --向现有文件中追加内容
#hdfs dfs -rm /directory/                        --删除文件
#hdfs dfs -rm -R /directory/   #hadoop fs -rm -r /dir          --删除文件夹,-R循环删除文件夹里面的文件
#hdfs dfs -mv /user/root/.Trash/Current/test/filename /test/filename     --找回删除文件

#hdfs dfs -moveFromLocal < local src > ... < hdfs dst >        --与put相类似,命令执行后源文件local src被删除,也可以是键盘输入
#hdfs dfs -copyFromLocal < local src > ... < hdfs dst >          --与put相类似,也可以从从键盘读取输入到hdfs file中

#hdfs dfsadmin -safemode enter                    --进入安全模式
#hdfs dfsadmin -safemode leave                    -- 退出安全模式

#bin/start-all.sh            --添加一个新的DataNode节点后,配置相同配置。NameNode节点上修改$HADOOP_HOME/conf/slaves文件,加入新节点名,再建立新加节点无密码的SSH连接,运行启动命令。
#bin/start-balancer.sh       --HDFS的数据在各个DataNode中的分布可能很不均匀,尤其是在DataNode节点出现故障或新增DataNode节点时。可使用命令重新平衡DataNode上的数据块的分布。

#运行MapReduce:   hadoop jar jarpath inputfilepath outputdir
#hadoop jar /opt/opp/test.jar /input/test/test.txt /output/test/          --运行jar包
#hadoop运行wordcount.jar MapReduce,输出路径是HDFS路径
#bin/hadoop jar /usr/joe/wordcount.jar org.myorg.WordCount /usr/joe/wordcount/input /usr/joe/wordcount/output
#yarn jar /opt/opp/Test.jar /input/test/test.txt /output/test/        --yarn运行jar包
#tail -f filename.log                         --动态查看log日志

#su root                              --切换到root用户
#reboot                             --重启Linux
#mkdir filename                          --创建文件filename
#rm -rf directory                          --删除文件夹
#wc /etc/passwd                         --统计passwd行数 -l,单词数 -w,字符数 -c,文件名
FQA:
1.Permission denied: user=root, access=WRITE, inode="/input":hdfs:supergroup:drwxr-xr-x
#export HADOOP_USER_NAME=hdfs                --设置hadoop_user_name

备注:
作者:Shengming Zeng
博客:http://www.cnblogs.com/zengming/ https://blog.csdn.net/Z645817
严正声明:
1.由于本博客部分资源来自互联网,版权均归原作者所有。转载的目的是用于学术交流与讨论学习,将不对任何资源负法律责任。
2.若无意中侵犯到您的版权利益,请来信联系我,我会在收到信息后会尽快给予处理!
3.所有资源内容仅供学习交流之用,请勿用作商业用途,谢谢。
4.如有转发请注明出处,来源于http://www.cnblogs.com/zengming/ https://blog.csdn.net/Z645817,谢谢合作。

免责声明:文章转载自《HDFS常用命令》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ABP 动态 WebApi 隐藏接口的方法(一)Linux性能优化实战学习笔记:第五十一讲下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

python下编译py成pyc和pyo

其实很简单,用python -m py_compile file.py python -m py_compile /root/src/{file1,file2}.py编译成pyc文件。也可以写份脚本来做这事:Code: import py_compile py_compile.compile('path') //path是包括.py文件名的路径 用py...

ParallelsDesktop安装精简版系统

本文原文链接地址:http://nullpointer.pw/ParallelsDesktop%E5%AE%89%E8%A3%85%E7%B2%BE%E7%AE%80%E7%89%88%E7%B3%BB%E7%BB%9F.html 分享一个虚拟机安装精简版 Windows10 系统的方法,只占用 5G 存储空间大小的完整版 win10 系统哦,不要安装那些...

《Win32多线程程序设计》学习笔记 第6章 Overlapped I/o 在你的身后变戏法

这章很重要,所以才把放到最后写,压轴,同时希望自己能认真的总结一下。这一章主要就是异步编程的内容,自己的理解 Overlapped I/O是win32的一项技术,你可以要求操作系统为你传送数据,并且在传送完毕时通知你。事实上,操作系统内部正是以线程来完成overlapped I/O,你可以获得线程的所有利益不需要付出什么代价。 Win32文件操作函数 wi...

C#中web项目使用log4net日志

  我准备把log4net的实现方法放在一个类库项目中,别的项目直接引用该类库,即可进行日志的记录,操作步骤如下: 1.下载log4net.dll文件 2.在解决方案下创建类库项目 3.把log4net.dll添加到上面创建的类库引用中 4.在web项目下,创建单独的log4net配置文件(当然,也可以写在web.config里),配置文件的内容如下 &...

使用Nuget管理dll

前言   nuget 已经不是什么新东西,它是vs的一个扩展工具,可以让我们在项目中添加、删除、更新引用变得更加快捷方便。现在有许多传统公司对dll的管理还是很落后的,有些甚至时通过发送dll文件,这样做的直接缺点就是很繁琐、容易出错。之前就有试过一个dll的版本不对,测试人员更新到线上接口直接就挂了,接着就是花一堆时间定位问题。nuget可以让我们很方便...

chown命令

chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的名录下之后,让用户拥有使用该文件的权限。   1.命令格式:     chown [选项]... [所有者][:[组]] 文件...   2.命...