HDFS的常用命令操作
HDFS的常用命令操作
1、基本语法
2、常用命令操作
#######################
1、基本语法
bin/hadoop fs具体命令
或
bin/hdfs dfs具体命令
(外勤部是满量程的实现类)
二者区别
hadoop fs:可以作用于除hdfs外的其他文件系统,作用范围更广。通用的文件系统命令,针对任何系统,比如本地文件、HDFS文件、HFTP文件、S3文件系统等。
(曾经还有hadoop dfs:专门针对hdfs分布式文件系统,已经不推荐使用)
hdfs dfs:专门针对hdfs分布式文件系统,相比于上面的命令更为推荐,并且当使用hadoop dfs时内部会被转为hdfs dfs命令。
2、常用命令操作
》启动hadoop集群
sbin/start-dfs.sh
sbin/起始纱线。嘘
(1)-帮助:可数出命令所需的参数
Hadoop @ Hadoop 101:/opt/module/Hadoop-3。1 .3/bin $ Hadoop fs-帮助RM
-RM[-f][-R |-R][-SkiptRash][-safe]src.
删除所有符合指定文件模式的文件。相当于Unix操作系统
命令" rm src "
-f如果文件不存在,不显示诊断消息或
修改退出状态以反映错误。
-[rR]递归删除目录。
-skipTrash选项绕过废纸篓(如果启用),并立即删除src .
-安全选项需要安全确认,如果启用,需要
删除大于的大目录前的确认
Hadoop。贝壳。删除。极限。计算器文件文件。预计延迟时间
递归遍历大目录以计算
确认前要删除的文件。
(2)-ls:显示目录信息
Hadoop @ Hadoop 101:/opt/module/Hadoop-3。1 .3/bin $ Hadoop fs-ls/
找到一个项目
drwxr-xr-x - hadoop超级组0 2020-02-29 00:11 /home
-mkdir:在HDFS上创建目录
Hadoop @ Hadoop 101:/opt/module/Hadoop-3。1 .3/bin $ Hadoop fs-mkdir-p/home/Hadoop/op _ test
Hadoop @ Hadoop 101:/opt/module/Hadoop-3。1 .3/bin $ Hadoop fs-ls/home/Hadoop
找到2个项目
drwxr-xr-x - hadoop超级组0 2020-02-29 00:14/home/Hadoop/input
drwxr-xr-x - hadoop超级组0 2020-03-02 06:42/home/Hadoop/op _ test
(4)-从本地移动:从本地剪切粘贴到HDFS
Hadoop @ Hadoop 101:/opt/module/Hadoop-3。1 .3/testin put $ touch op _ test。文本文件(textfile)
Hadoop @ Hadoop 101:/opt/module/Hadoop-3。1 .3/测试
input$ echo "hello,hdfs" op_test.txt
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -moveFromLocal ./op_test.txt /home/hadoop/op_test
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ ls
test.input
(5)-appendToFile:追加一个文件到已经存在的文件末尾
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ touch op_append.txt
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ echo "append-hdfs" op_append.txt
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop -appendToFile op_append.txt /home/hadoop/op_test/op_test.txt
(6)-cat:显示文件内容
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -cat /home/hadoop/op_test/op_test.txt
hello,hdfs
append-hdfs
(7)-chgrp、-chmod、-chown:Linux文件系统中的用法一样,修改文件所述权限
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -chmod 666 /home/hadoop/op_test/op_test.txt
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -chown hadoop:hadoop /home/hadoop/op_test/op_test.txt
(8)-copyFromLocal:从本地文件系统中拷贝文件到HDFS路径去
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ ls
op_append.txt test.input
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -copyFromLocal test.input /home/hadoop/op_test
(9)-copyToLocal:从HDFS拷贝到本地
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -copyToLocal /home/hadoop/op_test/op_test.txt ./
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ ls
op_append.txt op_test.txt test.input
(10)-cp:从HDFS的一个路径拷贝到HDFS的另一个路径
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -cp /home/hadoop/op_append.txt /home/hadoop/op_test
(11)-mv:在HDFS目录中移动文件
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -mv /home/hadoop/op_test/op_append.txt /home/hadoop
(12)-get:等同于copyToLocal,从HDFS下载文件到本地
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -get /home/hadoop/op_append.txt ./
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ ls
op_append.txt op_test.txt test.input
(13)-getmerge:从HDFS的目录下,将文件合并起来后下载
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -getmerge /home/hadoop/op_test/* ./common.txt
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ ls
common.txt op_append.txt op_test.txt test.input
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ cat common.txt
append-hdfs
hello,hadoop!
(14)-put:等同于copyFromLocal,从HDFS目录下拷贝文件到本地
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -put ./common.txt /home/hadoop/op_test/
2020-03-02 07:15:57,049 INFO sasl.SaslDataTransferClient: SASL encryption trust check: localHostTrusted = false, remoteHostTrusted = false
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -ls /home/hadoop/op_test
Found 3 items
-rw-r--r-- 3 hadoop supergroup 26 2020-03-02 07:15 /home/hadoop/op_test/common.txt
-rw-r--r-- 3 hadoop supergroup 12 2020-03-02 07:06 /home/hadoop/op_test/op_append.txt
-rw-r--r-- 3 hadoop supergroup 14 2020-03-02 06:56 /home/hadoop/op_test/test.input
(15)-tail:显示一个文件的末尾
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -tail
home/hadoop/op_test/common.txt
append-hdfs
hello,hadoop!
(16)-rm:删除文件或文件夹
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -rm /home/hadoop/*.txt
Deleted /home/hadoop/op_append.txt
Deleted /home/hadoop/op_test.txt
(17)-rmdir:删除空目录
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -mkdir /test
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -rmdir /test
(18)-du:统计文件夹的大小信息
-h:显示带MB及以上的可读形式
-s:得到文件夹下文件大小的总和
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -du /home/hadoop/op_test
26 78 /home/hadoop/op_test/common.txt
12 36 /home/hadoop/op_test/op_append.txt
14 42 /home/hadoop/op_test/test.input
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -du -h /home/hadoop/op_test
26 78 /home/hadoop/op_test/common.txt
12 36 /home/hadoop/op_test/op_append.txt
14 42 /home/hadoop/op_test/test.input
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -du -s /home/hadoop/op_test
52 156 /home/hadoop/op_test
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -du -s -h /home/hadoop/op_test
(19)-setrep:设置HDFS中文件的副本数量
hadoop@hadoop101:/opt/module/hadoop-3.1.3/testinput$ hadoop fs -setrep 2 /home/hadoop/op_test/common.txt
Replication 2 set: /home/hadoop/op_test/common.txt
1
2
注:实际可存在的副本数受DataNode的数量限制,不可大于DataNode的数量。若设置的副本数大于DataNode的数量,只在NameNode中记录本次设置的数量,而实际的副本数量将自动被控制为与DataNode相同数量。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/132072.html