HDFS⽂件系统Shell命令
Hadoop教程(三)HDFS⽂件系统Shell命令
1 Hadoop- Shell命令
HDFS是存取数据的分布式⽂件系统,那么对HDFS的操作,就是⽂件系统的基本操作,⽐如⽂件的创建、修改、删除、修改权限等,⽂件夹的创建、删除、重命名等。对HDFS的操作命令类似于Linux的shell对⽂件的操作,如ls、mkdir、rm等。
1.1 Shell命令格式
调⽤⽂件系统(FS)Shell命令应使⽤bin/hadoop fs <args>的形式。所有的的FS shell命令使⽤URI路径作为参数。URI格式是
scheme://authority/path。对HDFS⽂件系统,scheme是hdfs,对本地⽂件系统,scheme是file。其中scheme和authority参数都是可选的,如果未加指定,就会使⽤配置中指定的默认scheme。⼀个HDFS⽂件或⽬录⽐如/parent/child可以表⽰成
hdfs://namenode:namenodeport/parent/child,或者更简单的/parent/child(假设你配置⽂件中的默认值是
namenode:namenodeport)。⼤多数FS Shell命令的⾏为和对应的Unix Shell命令类似,不同之处会在下⾯介绍各命令使⽤详情时指出。出错信息会输出到stderr,其他信息输出到stdout。
1.2 hadoop fs帮助命令
在命令⾏执⾏:hadoop fs,查看fs命令:
1.3 –mkdir创建空⽩⽂件夹
-mkdir:创建空⽩⽂件夹,该命令选项表⽰创建⽂件夹,后⾯跟的路径是在hdfs将要创建的⽂件夹:
语法:
hadoop fs -mkdir /hadoop
hadoop fs -mkdirhdfs://Hadoop1:9000/hadoop/dir1 hdfs://Hadoop1:9000/hadoop/dir2
返回值:成功返回0,失败返回-1。
1.4 –put 上传⽂件
linux递归删除目录命令
-put:该命令选项表⽰把linux上的⽂件复制到hdfs中:
语法:
hadoop fs -/
hadoop fs -putlogs/hadoop-root-namenode-Hadoop1.log logs/yarn-root-nodemanager-Hadoop1.log/hadoop/
hadoop fs -putlogs/hadoop-root-namenode-Hadoop1.out hdfs://Hadoop1:9000/hadoop/
返回值:成功返回0,失败返回-1。
1.5 –copyFromLocal上传⽂件
-copyFromLocal:该命令除了限定源路径是⼀个本地⽂件外,操作与-put⼀致。
语法:
hadoop fs -copyFromLocallogs/yarn-root-nodemanager-Hadoop1.out /hadoop/
1.6 –ls显⽰当前⽬录结构
-ls:该命令选项表⽰查看指定路径的当前⽬录结构,参数:-R递归显⽰⽬录结构,后⾯跟hdfs路径:
语法:
语法:
hadoop fs -ls /
hadoop fs -ls hdfs://Hadoop1:9000/hadoop/
hadoop fs -ls -R hdfs://Hadoop1:9000/
返回值:成功返回0,失败返回-1。
1.7 –get递归显⽰当前⽬录结构
-get:复制⽂件到本地⽂件系统。可⽤-ignorecrc选项复制CRC校验失败的⽂件。使⽤-crc选项复制⽂件以及CRC信息:
语法:
hadoop fs -get/hadoop/hadoop-root-namenode-Hadoop1.out /home/hadoop-root-namenode-Hadoop1.out
hadoop fs -get /hadoop/hadoop-root-namenode-Hadoop1.out/home/hadoop-root-namenode-Hadoop1.out
返回值:成功返回0,失败返回-1。
1.8 –du统计⽬录下各⽂件⼤⼩
-du:显⽰⽬录中所有⽂件的⼤⼩,或者当只指定⼀个⽂件时,显⽰此⽂件的⼤⼩:
语法:
hadoop fs –du /hadoop
hadoop fs –du -s /hadoop
返回值:成功返回0,失败返回-1。
1.9 -count统计⽂件(夹)数量
-count:该命令选项显⽰指定路径下的⽂件夹数量、⽂件数量、⽂件总⼤⼩信息:
语法:
hadoop fs -count  /hadoop
1.10 –mv移动
-mv:将⽂件从源路径移动到⽬标路径。这个命令允许有多个源路径,此时⽬标路径必须是⼀个⽬录。不允许在不同的⽂件系统间移动⽂件:语法:
hadoop fs -mv/hadoop/hadoop-root-namenode-Hadoop1.log /hadoop/dir1
返回值:成功返回0,失败返回-1。
1.11 –cp复制
-cp:将⽂件从源路径复制到⽬标路径。这个命令允许有多个源路径,此时⽬标路径必须是⼀个⽬录:
语法:
hadoop fs -cp/hadoop/hadoop-root-namenode-Hadoop1.out /hadoop/dir2
hadoop fs -cp/hadoop/yarn-root-nodemanager-Hadoop1.log /hadoop/yarn-root-nodemanager-Hadoop1.out/hadoop/dir2
返回值:成功返回0,失败返回-1。
1.12 -moveFromLocal从本地移动
-moveFromLocal:将⽂件从源路径移动到⽬标路径。这个命令允许有多个源路径,此时⽬标路径必须是⼀个⽬录。不允许在不同的⽂件系统间移动⽂件:
语法:
hadoop fs -moveFromLocal /  /hadoop
返回值:成功返回0,失败返回-1。
1.13 -getmerge合并到本地
-moveFromLocal:该命令选项的含义是把hdfs指定⽬录下的所有⽂件内容合并到本地linux的⽂件中将⽂件从源路径移动到⽬标路径。这个命令允许有多个源路径,此时⽬标路径必须是⼀个⽬录。不允许在不同的⽂件系统间移动⽂件:
语法:
hadoop fs -getmerge /hadoop//
返回值:成功返回0,失败返回-1。
1.14 –cat查看⽂件内容
-cat:将路径指定⽂件的内容输出到stdout:
语法:
hadoop fs -cat/hadoop/yarn-root-nodemanager-Hadoop1.log
返回值:成功返回0,失败返回-1。
1.15 –text查看⽂件内容
-text:将路径指定⽂件的内容输出到stdout:
语法:
hadoop fs -text /
返回值:成功返回0,失败返回-1。
1.16 -touchz创建空⽩⽂件
-touchz:创建空⽩⽂件:
语法:
hadoop fs -touchz /
返回值:成功返回0,失败返回-1。
1.17 -stat显⽰⽂件的统计信息
-stat:该命令选项显⽰⽂件的⼀些统计信息:
语法:
hadoop fs -stat /hadoop/
返回值:成功返回0,失败返回-1。
1.18 -tail查看⽂件尾部内容
-tail:该命令选项显⽰⽂件最后1K字节的内容。⼀般⽤于查看⽇志。如果带有选项-f,那么当⽂件内容变化时,也会⾃动显⽰:
语法:
语法:
hadoop fs -tail -f/hadoop/dir1/hadoop-root-namenode-Hadoop1.log
返回值:成功返回0,失败返回-1。
1.19 -chmod修改⽂件权限
-chmod:改变⽂件的权限。使⽤-R将使改变在⽬录结构下递归进⾏。命令的使⽤者必须是⽂件的所有者或者超级⽤户。:语法:
hadoop fs -chmod -R 750  /hadoop/dir2
返回值:成功返回0,失败返回-1。
1.20 -chown修改属主
-chown:改变⽂件的拥有者。使⽤-R将使改变在⽬录结构下递归进⾏。命令的使⽤者必须是超级⽤户。:
语法:
hadoop fs -chown -R supergroup /hadoop/dir2
hadoop fs -chown -R⽤户:组路径
hadoop fs -chown -R supergroup:supergroup/hadoop/dir2
返回值:成功返回0,失败返回-1。
1.21 -chgrp修改属组
-chgrp:该命令的作⽤是修改⽂件的属组,该命令相当于“chown:属组”的⽤法
语法:
hadoop fs -chgrp -R root /hadoop/dir2
hadoop fs -chgrp -R⽤户:组路径
hadoop fs -chgrp -R supergroup:root/hadoop/dir2
返回值:成功返回0,失败返回-1。
1.22 -rm删除⽂件/空⽩⽂件夹
-rm:删除指定的⽂件。只删除⾮空⽬录和⽂件。
语法:
hadoop fs -rm/hadoop/dir1/hadoop-root-namenode-Hadoop1.log
返回值:成功返回0,失败返回-1。
1.23 –rmr递归删⽂件
-rmr:该命令选项表⽰递归删除指定⽬录下的所有⼦⽬录和⽂件。
语法:
hadoop fs –rm -r /hadoop/dir2
hadoop fs -rmr /hadoop/dir2
返回值:成功返回0,失败返回-1。
1.24 –help帮助
-help:该命令选项会显⽰帮助信息,后⾯跟上需要查询的命令选项即可。语法:
hadoop fs -help命令
hadoop fs -help ls

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。