hdfs:介绍三个脚本

news/2025/2/2 1:55:54 标签: hdfs, hadoop, 大数据

1、jps-cluster.sh

如果我们想在Bigdata01 这台电脑上,查看整个集群的服务启动情况,可以使用这个脚本文件。

#!/bin/bash
USAGE="使⽤⽅法:sh jps-cluster.sh"
NODES=("bigdata01" "bigdata02" "bigdata03")
for NODE in ${NODES[*]};do
echo "--------$NODE--------"
ssh $NODE "/opt/installs/jdk/bin/jps"
done
echo "------------------------------------------"
echo "--------jps-cluster.sh脚本执⾏完成!--------"

 记得赋权限

chmod u+x jps-cluster.sh

 不管在哪个地方都可以执行该命令  jps-cluster.sh

 

 2、集群文件分发脚本【xsync.sh】

 我们经常进行文件的长拷贝,拷贝完第一台,拷贝第二台,如下所示:
      scp -r  文件或者文件夹  root@主机名:/路径
可以一个命令下去,分发所有的Linux服务器,不用一个个的长拷贝了。
需要有一个服务,rsync
需要在所有的分发的电脑上安装  rsync。

 脚本文件:

yum install -y rsync

 一定要注意:此脚本文件,不要在windows进行编辑,否则会报错,全程使用linux进行编辑,原因是windows中的字符集和linux中的不一样。
touch   xsync.sh
chmod  u+x xsync.sh
使用的案例: xsync.sh /etc/profile

#!/bin/bash
#1 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if [ $pcount -lt 1 ]
then
echo No Enough Arguement!
exit;
fi

#2. 遍历集群所有机器
for host in bigdata02 bigdata03
do
echo ====================    $host    ====================
#3. 递归遍历所有目录
for file in $@
do
#4 判断文件是否存在
if [ -e $file ]
then
#5. 获取全路径
pdir=$(cd -P $(dirname $file); pwd)
echo pdir=$pdir

#6. 获取当前文件的名称
fname=$(basename $file)
echo fname=$fname

#7. 通过ssh执行命令:在$host主机上递归创建文件夹(如果存在该文件夹)
ssh $host "source /etc/profile;mkdir -p $pdir"

#8. 远程同步文件至$host主机的$USER用户的$pdir文件夹下
rsync -av $pdir/$fname $USER@$host:$pdir
else
echo $file Does Not Exists!
fi
done
done

 

rsync -av

最常用的选项,表示递归模式,保留软链接、文件权限、修改时间戳、属主、属组、设备文件、特殊文件,详细显示执行过程

 测试一下:

xsync.sh   跟上你想同步的文件或者文件夹都可以
xsync.sh  /etc/hosts   将hosts文件同步给其他两台电脑。

 3、命令同步执行脚本[xcall.sh]

 一个命令在一个电脑上运行,是否可以在多台电脑上同步执行呢?
比如  yum install -y rsync
vi   xcall.sh
编辑
chmod u+x xcall.sh

#!/bin/bash

params=$@
i=1
for (( i=1 ; i <= 3 ; i = $i + 1 )) ; do
    echo ============= bigdata0$i $params =============
    ssh bigdata0$i "$params"
done

 测试:

xcall.sh  hostname
xcall.sh  ifconfig
xcall.sh  yum install -y rsync
xcall.sh source /etc/profile

不能是xcall.sh jps
除非写全路径:xcall.sh /opt/installs/jdk/bin/jps
可以将 jps这个命令做一个软链接到/usr/local/bin 下
xcall.sh ln -s /opt/installs/jdk/bin/jps /usr/local/bin/jps
这样一修复,就可以 xcall.sh jps 


http://www.niftyadmin.cn/n/5839700.html

相关文章

Github 2025-01-31Java开源项目日报 Top10

根据Github Trendings的统计,今日(2025-01-31统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Java项目10C项目1Kotlin项目1Bazel:快速、可扩展的多语言构建系统 创建周期:3564 天开发语言:Java协议类型:Apache License 2.0Star数量:2…

浅谈RTB场景中的动态出价算法

一、RTB与动态出价的基本概念 实时竞价&#xff08;Real-Time Bidding, RTB&#xff09; 是一种程序化广告交易方式&#xff0c;当用户访问网页或应用时&#xff0c;广告展示机会会通过实时拍卖机制出售给广告主。整个过程通常在毫秒级完成&#xff0c;涉及以下步骤&#xff1…

【cocos官方案例改】跳跃牢猫

自制游戏【跳跃牢烟】 案例解析 案例需求&#xff0c;点击鼠标控制白块左右。 资源管理器部分 在body创建一个2d精灵用作玩家。 在地下在创建一个2d精灵用来代表地面。 在body下挂在脚本。 全部脚本如下 &#xff08;在二次进行复刻时候&#xff0c;发现把代码复制上去无法…

Flink Connector 写入 Iceberg 流程源码解析_confluent icebergsinkconnector

// 添加 Writer 算子&#xff0c;有并行度SingleOutputStreamOperator<WriteResult> writerStream appendWriter(distributeStream, flinkRowType, equalityFieldIds);// 添加 Commit 算子&#xff0c;并行度固定为 1 SingleOutputStreamOperator<Void> committerS…

扩展无限可能:Obsidian Web Viewer插件解析

随着 Obsidian 1.8.3 正式版的发布&#xff0c;备受期待的官方核心插件——Web Viewer 也终于上线。本文将从插件启用、设置以及应用场景三个方面详细介绍如何使用这一新功能&#xff0c;和大家一起更好地利用 Obsidian 进行内容管理和知识整理。 插件启用 Web Viewer作为官方…

web前端11--伪类与过渡

1、状态伪类选择器 选择元素在不同状态下的样式 - :hover 当鼠标悬停在元素上时&#xff08;重点!!!&#xff09; cssdiv:hover{width: 600px;transform: rotate(15deg);}- :active&#xff1a;元素被激活(鼠标按下时)的状态。 - :focus&#xff1a;元素获得焦点时。(输入框…

FBX SDK的使用:基础知识

Windows环境配置 FBX SDK安装后&#xff0c;目录下有三个文件夹&#xff1a; include 头文件lib 编译的二进制库&#xff0c;根据你项目的配置去包含相应的库samples 官方使用案列 动态链接 libfbxsdk.dll, libfbxsdk.lib是动态库&#xff0c;需要在配置属性->C/C->预…

JavaScript闭包深入剖析:性能剖析与优化技巧

一、引言 在 JavaScript 的奇妙世界里&#xff0c;闭包无疑是一个既强大又迷人的特性。它就像是一把万能钥匙&#xff0c;为开发者打开了实现各种高级功能的大门。从数据封装与保护&#xff0c;到函数的记忆化&#xff0c;再到模块化开发&#xff0c;闭包都发挥着举足轻重的作…