Linux集群命令分发执行脚本如果没有运维人员或运维软件,但是又面临在一个集群中每台机器都执行一个命令时,总不能真的登录每一台吧 。那这里就起一个简单的命令分发执行脚本 。
0、确保脚本所在的机器能够免密登录到集群其他机器
SSH免密登录配置
1、将集群的IP都写入一个文件中
2、编写命令分发脚本
如果机器数量少,可以替换第三行语句为
如果机器IP配置的映射名有规律,也可以替换第三行语句为
同时后面的 $i 替换为 hadoop$i
3、测试
Linux:Python编写Linux自定义命令工具 摘要linux写命令脚本: Linux linux写命令脚本,Python
工作中需要频繁使用到一个字符串的md5linux写命令脚本,因此编写一个md5命令工具linux写命令脚本,输入字符串直接得到输出 , 并且命令支持参数设置,比如是否事先格式化,指定不同参数可以支持多功能输出,操作步骤如下
直接vim一个脚本 , 脚本名md5不需要.py后缀,这样更像一个命令 , 注意在脚本第一行引入python解释器 , 并设置utf-8编码
其中-f支持先格式化再得到md5,-l支持传入多个字符串用空格分开
赋予可执行权限
测试是否符合要求
直接放置到 /usr/local/bin 目录下(需要root权限)
也可以使用软连接的方式,推荐使用绝对路径
之后就可以在环境变量中直接使用到md5命令
shebang :中文翻译“释伴”,由 #! 开头的字符串,出现在文本文件的 第一行。类UNIX操作系统的程序载入器会分析shebang后的内容,将这些内容作为解释命令,并调用该指令,并将载有 shebang的文件路径作为该解释器 的参数
比如 #!/bin/bash 就是使用/bin/bash作为解释器运行脚本,如果以Python作为解释器运行脚本先找到Python解释器的路径,一般在Linux自带的 /usr/bin/python 是Python2版本 , 也可以指定其linux写命令脚本他Python版本 #!/opt/anaconda3/bin/python , 第二行为 # coding=utf-8 用来指定编码格式,否则Python2输出中文乱码
对于自定义脚本,推荐放置在 /usr/local/bin 目录 , 有多个可执行文件目录在环境变量中 , 区别如下:
/bin : 包含二进制可执行文件,为系统最基本的命令,如ls等
/sbin : 与/bin 类似,不同之处是其为root权限命令文件
/usr/bin : 系统预装可执行文件,会随着系统升级而改变
/usr/sbin :同上,不同之处是其为root权限运用
/usr/local/bin : 三级目录,用户自己的可执行文件,系统不管理
/usr/local/sbin : root权限用户程序
学生信的那些事儿之七 - Linux基础之Shell脚本编程沿着前面的轨迹,接下来是Linux中shell脚本的学习 。这对于生信工程师后续处理大量 (海量更合适些) 数据是非常非常重要的,但是同样的,作为一个有点古板的人 , 对于"脚本"是什么意思我都死磕了好久 。主要觉得有些抽象 , 尤其是跟生信的同事讨论项目分析部分的问题时 , 他们经常会说道这个词,在他们意识里这是个不言自明的术语,殊不知对外行人而言 (比如我),那简直就是无情的"知识的诅咒" 。经常是我假装听懂了,然后继续讨论下面的问题 , 形成一个模糊的印象 。
百度上的解释是:脚本(Script)是一种批处理文件的延伸,是一种纯文本保存的程序 , 一般来说的计算机脚本程序是确定的一系列控制计算机进行运算操作动作的组合,在其中可以实现一定的逻辑分支等 。不知道你能不能看懂,反正我开始的时候真是一知半解 。
鸟哥私房菜的解释是:shell script是利用 shell 的功能所写的一个"程序",这个程序是使用纯文本文件,将一些shell的语法与命令(含外部命令)写在里面 , 搭配正则表达式、管道命令与数据流重定向等功能,以达到我们所想要的处理的目的 。不明觉厉,好像更看不懂了···
推荐阅读
- 钉钉周五可以直播吗,钉钉星期天能打卡吗
- 无盘服务器系统,无盘系统服务器要求
- 玉林卖货直播,玉林卖货直播平台
- mysql中的事务怎么用 mysql事务使用场景
- 南京日报新媒体待遇如何,南京日报社的待遇如何
- word如何往下加时间,word时间怎么在右下角
- 如何进一步办好新媒体,当前如何做好新媒体的管理
- c怎么配置mysql mysql配置mycnf
- 连接redis报错java,连接redis报错connection refused