HDFS的shell操作

注意vi编辑器:
dG 删除光标所在⾏到末尾的内容 相当于删除全文
dd 删除当前行

#!/bin/bash

定义所有的节点

HOSTS=( host01 host02 host03 )

遍历每⼀个节点

for HOST in ${HOSTS[*]}
do

远程登录到指定节点,执⾏jps命令

ssh -T $HOST << TERMINATER
echo “---------- $HOST ----------”
jps | grep -iv jps
exit
TERMINATER
done

ssh是⼀个远程登录的命令,可以远程登录到指定的虚拟机。
ssh -T 意思是说禁止分配伪终端。
-T 不显示终端,只显示连接成功信息

jps | grep -iv jps
-iv 显示不包含匹配文本的所有行

1、> 覆盖输出到文本
2、>>追加到文本
3、< 将后面文件作为前面命令的输入
4、<< 带命令作用全文匹配某个字符串后结束
5、<<<部分匹配某个字符串

sudo chmod a+x jps-cluster.sh
ln -s /opt/bin/jps-cluster.sh /usr/bin 用软连接把脚本文件放到/usr/bin下面就可以实现全局调用
/usr/bin已经被系统配置成了全局环境变量

日志查看问题所在:

HDFS的⻆⾊有三个: NameNode、SecondaryNameNode、DataNode,启动的时候也会有对应的⽇志⽂件⽣
成。如果在启动脚本执⾏之后,发现对应的⻆⾊没有启动起来,那就可以去查看⽇志⽂件,检查错误的详情,解决问

⽇志的位置: $HADOOP_HOME/logs
⽇志的命名: hadoop-username-daemon-host.log

在这里插入图片描述
在这里插入图片描述
rm -rf logs / tmp/ 同时删除两个文件夹 三个对象都需要重复这个操作

HDFS的shell操作

Hdfs dfs mkdir /test hdfs创建之类的不支持相对路径,只有绝对路径
Hdfs dfs mkdir -p /test/a/b/c 加参数-p 可以创建多级目录
Hdfs dfs -put 上传的目录或者文件 hdfs的路径
Hdfs dfs -ls / 查看hdfs根下面的所有文件
-h把文件大小转为M,方便查看
-R 递归查询,把目录下的所有数据查出来
Hdfs dfs -cat 查看文件中的内容

Hdfs dfs -copyToLocal hdfs上面的文件路径 liunx上的路径
Hdfs dfs -get hdfs上面的文件路径 liunx上的路径
Hdfs dfs -getmerge /input/file* file (意思把hdfs下面的所有file文件合并到liux下的file文件中)

Hdfs dfs -rm /f.png (删除hdfs下面的f.png文件)
Hdfs dfs -rm -r /test (删除hdfs下面的文件夹)

Hdfs dfs -cp (hdfs文件/文件夹路径1) (hdfs文件/文件夹路径2) 拷贝文件或者文件夹
Hdfs dfs -mv (hdfs文件/文件夹路径1) (hdfs文件/文件夹路径2) 移动或者重命名

Hdfs dfs -touchz /file 在hdfs下面创建一个file空文件
注意:hdfs的文件系统上的文件,不允许进行文件的数据插入、删除、修改,只支持向文件的末尾追加内容;
Hdfs dfs -appendToFile ~/input/file1 /file

Hdfs dfs -chmod 777 /file 修改文件权限
Hdfs dfs -chmod -R 777 /file 修改文件/文件夹的权限

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值