HDFS的shell基本操作

首先,启动dfs

[root@hadoop100 ~]# start-dfs.sh

上传文件系统

[root@hadoop100 hadoop-2.7.2]# hdfs dfs -put etc /

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
查看hadoop文件目录:
在这里插入图片描述
创建etc2文件

[root@hadoop100 bin]# hadoop fs -cp /etc /etc2

在这里插入图片描述查看文件占用文件容量信息

[root@hadoop100 bin]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   37G  7.9G   30G  22% /
devtmpfs                 475M     0  475M   0% /dev
tmpfs                    487M     0  487M   0% /dev/shm
tmpfs                    487M  7.8M  479M   2% /run
tmpfs                    487M     0  487M   0% /sys/fs/cgroup
/dev/sda1               1014M  133M  882M  14% /boot
tmpfs                     98M     0   98M   0% /run/user/0
[root@hadoop100 bin]# 

查看hadoop文件占用文件容量信息

[root@hadoop100 bin]# hadoop fs -df -h
Filesystem                Size   Used  Available  Use%
hdfs://hadoop100:9000  110.9 G  648 K     74.0 G    0%

文件夹信息

[root@hadoop100 bin]# hadoop fs -du -h /
77.8 K  /etc
71.6 K  /etc2
0       /tmp
[root@hadoop100 bin]# 

上传文件

[root@hadoop100 bin]# hadoop fs -copyFromLocal hdfs /

在这里插入图片描述
删除文件

[root@hadoop100 hadoop-2.7.2]# hadoop fs -rm -r /*

[root@hadoop100 hadoop-2.7.2]# hadoop fs -rm -r hdfs://hadoop100:9000/*
17/09/11 11:56:07 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes.
Deleted hdfs://hadoop100:9000/etc2
17/09/11 11:56:07 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes.
Deleted hdfs://hadoop100:9000/hdfs
[root@hadoop100 hadoop-2.7.2]# 

在这里插入图片描述


在虚拟机hadoop安装目录下创建的文件剪贴到文件服务系统去的命令
-moveFromLocal:从本地剪切粘贴到HDFS

[root@hadoop100 hadoop-2.7.2]# hadoop fs -moveFromLocal wcountput /

在这里插入图片描述
在这里插入图片描述


-appendToFile:追加一个文件到已经存在的文件末尾

[root@hadoop100 hadoop-2.7.2]# ls
bin  data  etc  include  input  lib  libexec  LICENSE.txt  logs  NOTICE.txt  output  README.txt  sbin  share  tmp  wcinput  wc.input  workcount
[root@hadoop100 hadoop-2.7.2]# mkdir test
[root@hadoop100 hadoop-2.7.2]# cd test/
[root@hadoop100 test]# ll
total 0
[root@hadoop100 test]# cat <<EOF>>1.txt
> 111
> 222
> 333
> EOF
[root@hadoop100 test]# cat 1.txt
111
222
333
[root@hadoop100 test]# 
[root@hadoop100 test]# cat <<EOF>>2.txt
> 444
> 555
> 666
> EOF
[root@hadoop100 test]# cat 2.txt
444
555
666
[root@hadoop100 test]# 
[root@hadoop100 test]# hadoop fs -mkdir /test
[root@hadoop100 test]# hadoop fs -put 1.txt /test
[root@hadoop100 test]# 

在这里插入图片描述
在这里插入图片描述
追加命令:

[root@hadoop100 test]# hadoop fs -appendToFile 2.txt /test/1.txt

在这里插入图片描述
-cat:显示文件内容

[root@hadoop100 test]# hadoop fs -cat /test/1.txt 
111
222
333
[root@hadoop100 test]# 


HSFS到本地的数据:下载

[root@hadoop100 test]# hadoop fs -get /wcountput ./ 
[root@hadoop100 test]# ll
total 8
-rw-r--r-- 1 root root 12 Sep 11 12:09 1.txt
-rw-r--r-- 1 root root 12 Sep 11 12:11 2.txt
drwxr-xr-x 2 root root 42 Sep 11 12:23 wcountput
[root@hadoop100 test]# 


-copyFromLocal:从本地文件系统中拷贝文件到HDFS路径去

[root@hadoop100 test]# cat <<EOF>>3.txt
> 333
> 333
> 333
> EOF
[root@hadoop100 test]# ll
total 12
-rw-r--r-- 1 root root 12 Sep 11 12:09 1.txt
-rw-r--r-- 1 root root 12 Sep 11 12:11 2.txt
-rw-r--r-- 1 root root 12 Sep 11 12:26 3.txt
drwxr-xr-x 2 root root 42 Sep 11 12:23 wcountput
[root@hadoop100 test]# hadoop fs -put 3.txt /test

在这里插入图片描述
-getmerge:合并下载多个文件,比如HDFS的目录 /user/atguigu/test下有多个文件:log.1, log.2,log.3,…

[root@hadoop100 test]# hadoop fs -getmerge /test/* merge.txt
[root@hadoop100 test]# ll
total 16
-rw-r--r-- 1 root root 12 Sep 11 12:09 1.txt
-rw-r--r-- 1 root root 12 Sep 11 12:11 2.txt
-rw-r--r-- 1 root root 12 Sep 11 12:26 3.txt
-rw-r--r-- 1 root root 24 Sep 11 12:30 merge.txt
drwxr-xr-x 2 root root 42 Sep 11 12:23 wcountput

[root@hadoop100 test]# cat merge.txt 
111
222
333
333
333
333
[root@hadoop100 test]# tail 1.txt
111
222
333
[root@hadoop100 test]# tail -F 1.txt
111
222
333


[root@hadoop100 test]# echo 1 >>1.txt


[root@hadoop100 test]# tail -F 1.txt
111
222
333

1

[root@hadoop100 test]# hadoop fs -tail -f /test/1.txt
111
222
333


-setrep:设置HDFS中文件的副本数量

[root@hadoop100 test]# hadoop fs -setrep 10 /test /1.txt
Replication 10 set: /test/1.txt
Replication 10 set: /test/3.txt
setrep: `/1.txt': No such file or directory
[root@hadoop100 test]# 

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值