hdfs命令行

命令行操作有两种格式 :
hadoop fs -具体的命令 要操作的目录或者文件
hdfs dfs -具体的命令 要操作的目录或者文件

1.对于目录的操作

1.1 对目录的查询

使用ls命令可以查看hdfs上的目录
-- 查询hdfs上的根目录
hadoop fs -ls /
-- 使用R参数进行递归查询
hadoop fs -ls -R /

1.2 创建目录

使用mkdir命令可以创建hdfs上的目录
-- 在hdfs上创建/test目录
hadoop fs -mkdir /test
-- 在hdfs上创建/file/input目录
-- 使用p参数进行递归创建目录
hadoop fs -mkdir -p /file/input

1.3 删除目录

使用rm命令可以删除hdfs上的目录和文件
-- 删除hdfs上的/test目录
-- 使用r参数进行递归删除目录
hadoop fs -rm -r /test
-- 删除hdfs上的/file目录
hadoop fs -rm -r /file

2.对于文件的操作

2.1 创建空白文件

使用touch或者touchz命令可以在hdfs上创建空白文件
-- 在hdfs上创建/file/touch.txt文件
hadoop fs -touch /file/touch.txt

2.2 上传文件

使用put命令可以将本地(Linux)文件上传到hdfs上,上传完成后,本地的文件依然保留
hadoop fs -put 文件的本地路径 文件上传到的hdfs路径
-- 将本地的/opt/file/test.txt文件上传到hdfs上的/file
hadoop fs -put /opt/file/test.txt /file
使用moveFromLocal命令也可以将本地文件上传到hdfs上,上传完成后,本地文件不保留,会被删除
hadoop fs -moveFromLocal 文件的本地路径 文件上传到的hdfs路径
-- 将本地的/opt/file/a.txt文件上传到hdfs上的/file
hadoop fs -moveFromLocal /opt/file/a.txt /file

2.3 查看文件内容

使用cat命令可以查看hdfs上的文件内容
-- 查看/file/test.txt文件中的内容
hadoop fs -cat /file/test.txt
-- cat命令可以同时查看多个文件中的内容
hadoop fs -cat /file/test.txt /file/a.txt

2.4 下载文件

使用get命令可以将hdfs上的文件下载到本地(Linux)
hadoop fs -get 文件在hdfs上的路径 文件下载到本地的路径
-- 将hdfs上的/file/a.txt下载到本地/opt
hadoop fs -get /file/a.txt /opt

2.5 文件的改名和目录调整

使用cp命令可以将hdfs上的文件复制拷贝到其他hdfs目录中,在复制过程中可以修改文件的名称,拷贝完成
后,文件在源路径中依然保留
hadoop fs -cp 文件在hdfs上的源路径 文件在hdfs上的新路径
-- 将hdfs上的/file/a.txt复制到/b.txt
hadoop fs -cp /file/a.txt /b.txt
使用mv命令可以将hdfs上的文件剪切到其他hdfs目录中,在复制过程中可以修改文件的名称,拷贝完成后,文
件在源路径中会被删除
hadoop fs -mv 文件在hdfs上的源路径 文件在hdfs上的新路径
-- 将hdfs上的/file/test.txt复制到/test1.txt
hadoop fs -mv /file/test.txt /test1.txt

2.6 对文件的赋权

r:4

w:2

x:1

hadoop fs -chmod 777 /file/a.txt

3 判断操作

使用test命令进行判断操作
-- 1. 判断文件是否在hdfs上存在
hadoop fs -test -e /file/a.txt
命令执行后,执行echo $? 如果返回0 表示文件存在 否则文件不存在
-- 2. 判读是否为目录
hadoop fs -test -d /file/a.txt
命令执行后,执行echo $? 如果返回0 表示是目录 否则不是目录
-- 3. 判断文件是否为空
hadoop fs -test -z /file/a.txt
hadoop fs -test -z /file/touch.txt
命令执行后,执行echo $? 如果返回0 表示文件为空 否则文件不为空

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值