Linux Shell
文章平均质量分 71
Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。
南宫乘风
当你的才华撑不起你的野心时,只有静下心学习才是唯一的出路
展开
-
Linux操作系统账号密码失效检测
根据我开发的邮件接口上调用操作,触发告警GO的WEB编程(GIN实现邮件接口报警)Gin编写邮件接口(支持多人发送)Gin编写邮件告警接口(添加优化日志记录)首先,我们Linux操作系统可以创建多个用户账号。但是为了系统安全考虑,我们会给账号密码设置有效期和复杂难度,防止非法操作爆破我们的机器。但是每次修改完,到规定时间需要修改账号密码,这个每次人工来看,比较麻烦,所以做个账号密码到期的警告。当密码快要过期时,我们可以发邮件告警。账号密码过期设置function Che原创 2021-12-23 15:39:37 · 2921 阅读 · 0 评论 -
再也不用担心Shell脚本出错-ShellCheck
写过shell脚本的人都知道,即便出现一些简单的语法错误,运行的时候也可能没有办法发现。有些看似运行正确的脚本,实际上可能在某些分支,某些场景下仍然出现错误,而有的写法可能运行正常,但是却不符合POSIX标准,不具备可移植性。诚然,shell脚本是解释运行,没有办法向C/C++那样严格检查,但是我们仍然可以借助一些工具帮助我们提前发现一些错误。...原创 2021-06-12 21:33:26 · 1381 阅读 · 0 评论 -
Shell帮你掌管上千台服务(多线程)
日常服务器运维时,我们都会批量管理多台服务器。脚本,批量化,使我们工作中必不可少的。首先我们需要一台堡垒机,负责免秘钥的登录和分发任务等等堡垒机到主机需要一套ssh-keygen来管理...原创 2021-06-09 20:42:08 · 624 阅读 · 0 评论 -
Shell监控公网IP-变化邮件报警
Shell监控公网IP-变化邮件报警公司用的网线IP,但是有时IP会改变,导致部分业务有问题,我们又不能及时发现,会造成一定的影响。现在使用shell监控公网的IP,如发生变化,立即邮件报警。企业级-Shell案例2——发送告警邮件centos邮件报警可以参考这个,默认是mailx脚本#!/bin/bashdirfile='/home/ip_change'new_ip=`curl icanhazip.com` #获取新公网ipmail_user=1794@q..原创 2021-05-01 13:58:35 · 1366 阅读 · 0 评论 -
Linux自动批量增加公钥
自动增加公钥需求:提示要输入对方的ip和root密码,然后可以自动把本机的公钥增加到对方机器上,从而实现密钥认证。1.在使用之前,先安装epel源,yum install expect -y2.写分发脚本,后缀为exp#!/usr/bin/expect#!/bin/bash#name:南宫乘风#email:heian99@163.com#自动添加公钥到指定的服务器se...原创 2020-03-30 13:41:03 · 821 阅读 · 0 评论 -
主机存活监控
单个服务器监控监控远程的一台机器(假设ip为192.168.1.100)的存活状态,当发现宕机时发一封邮件给你自己#!/bin/bash#name:南宫乘风#email:heian99@163.comip="192.168.1.100"while true ; do # 利用ping检查主机是否存活 ping -c 4 $ip > /dev/null 2&g...原创 2020-03-28 17:59:29 · 731 阅读 · 1 评论 -
Centos7使用脚本搭建LVS的DR模式。
环境准备:三台虚拟机1)此环境是针对内部服务的LVS架构,如数据库,缓存,共享存储等业务。虚拟机角色 IP地址 备注 LVS负载均衡器 192.168.116.129 VIP地址:192.168.116.100 http服务器RS1 192.168.116.130 http服务器RS2 192.168.116.131 ...原创 2020-02-20 23:23:23 · 641 阅读 · 0 评论 -
Linux shell awk模式使用
awk的PATTERN表示方法:1,正则表达式,格式为/regex/以冒号为分隔符,显示/etc/passwd以r开头的行的第一段[root@wei awk]# awk -F: '/^r/{print $1}' /etc/passwdroot以冒号为分隔符,显示/etc/passwd以nologin结尾的行的第一段[root@wei awk]# awk -F: '/nol...原创 2019-04-14 22:59:14 · 733 阅读 · 0 评论 -
Linux shell awk中printf使用
printf 是 awk 的重要格式化输出命令printf格式化输出内容格式: printf format,item1,item2... 要点:1,printf输出时要指定格式format2,formay用于指定后面的每个item输出的格式3,printf语句不会自动打印换行符\nformat格式:%c:显示单个字符%d,%i:十进制整数%e,%E:科学...原创 2019-04-14 21:29:21 · 2097 阅读 · 0 评论 -
Linux shell awk中print及变量使用
Linux处理文本工具 grep: 过滤文本内容 sed: 编辑文本内容 awk: 显示文本 awk: Aho Peter Weinberger Kernighan报告生成器,以特定的条件查找文本内容,在以特定的格式显示awk命令的格式:# awk [option] 'script' file1 file2...# awk [option]...原创 2019-04-14 20:59:55 · 32644 阅读 · 0 评论 -
Linux shell sed命令使用
Linux处理文本文件的工具: grep 过滤文件内容 sed 编辑文件内容 awk 正则表达式Regex 正则表达式Regexsed在处理文本时是逐行读取文件内容,读到匹配的行就根据指令做操作,不匹配就跳过。sed是Linux下一款功能强大的非交互流式文本编辑器,可以对文...原创 2019-04-09 22:21:30 · 864 阅读 · 0 评论 -
Linux shell awk数组使用
awk中使用数组一.数组格式数组是一个包含一系列元素的表.格式如下: abc[1]=”xiaohong” abc[2]=”xiaolan”解释:abc:为数组名称[1]、[2]:为数组元素下标,可以理解为数组的第1个元素、数组的第2个元素”xiaohong”、”xiaolan”: 元素内容数组arrray[index-express...原创 2019-04-15 23:18:25 · 751 阅读 · 0 评论 -
Linux shell awk逻辑控制语句
awk逻辑控制语句1,if...else格式:if(条件){语句;语句} else {语句1;语句2}如果statement只有一条语句,{}可以不写以冒号为分隔符,判断第一个字段,如果为root,则显示用户为administrator,否则显示用户问common user[root@wei csdn]# awk -F: '{if($3==0){print $1,"is ...原创 2019-04-15 23:14:25 · 1071 阅读 · 0 评论 -
Linux shell 数组
Shell 数组数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。与大部分编程语言类似,数组元素的下标由0开始。Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:array_name=(value1 ... valuen)我们也可以使用下标来定义数组:array_nam...原创 2019-04-11 23:04:58 · 843 阅读 · 0 评论 -
Linux shell简单创建用户脚本
前面介绍简单的shell编写规则。现在开始编写一个简单的shell脚本。Linux shell介绍编写shell脚本 1.创建脚本文件 2.根据需求,编写脚本 3.测试执行脚本 编写脚本,实现创建用户hei,病设置用户密码为root[root@wei shell]# vim user.sh#!/bin/bash# 注释useradd hei...原创 2019-03-14 22:06:35 · 3289 阅读 · 0 评论 -
Linux shell if条件判断2
前面介绍linux shell的if判断的语法,现在再补充一点。Linux shell if条件判断1分支判断结构 if , case下面两个结构语法,已经在前面有过示例。结构1:if CONDITON; then statement statement fi结构2:if CONDITON; then statement sta...原创 2019-03-19 22:12:21 · 1162 阅读 · 0 评论 -
Linux shell case条件判断及位置变量
case语句使用于需要进行多重分支的应用情况case分支判断结构语法:case 变量名称 in value1) statement statement ;; value2) statement statement ;; *) st...原创 2019-03-20 21:03:56 · 2318 阅读 · 0 评论 -
Linux shell之重定向输入,输出
shell是一个命令解释器,它在操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕返回给用户。这种对话方式可以是交互的方式(从键盘输入命令,可以立即得到shell的回应),或非交互(执行脚本程序)的方式。下图的黄色部分就是命令解释器shell处于的操作系统中位置形象图解。Linux SHELL 脚本 大量重复执行的...原创 2019-03-12 22:28:21 · 739 阅读 · 0 评论 -
Linux shell if条件判断1
shell 逻辑控制语句: 分支判断结构 if case 循环结构 for while until if语句结构用法1if CONDITON; then statement statement fiCONDITION条件的写法: ...原创 2019-03-17 20:00:00 · 4252 阅读 · 0 评论 -
Linux shell for循环结构
Linux Shell for循环结构循环结构 1:循环开始条件 2:循环操作 3:循环终止的条件shell语言 for,while,utilfor循环语法:(1)for 变量 in 取值列表;do statement statementdone(2)for 变量 in 取...原创 2019-03-21 22:33:39 · 770 阅读 · 0 评论 -
Linux shell 中断循环语句
无限循环:循环有限的生命,他们跳出来,一旦条件是 false 还是 false 取决于循环。由于所需的条件是不符合一个循环可能永远持续下去。永远不会终止执行一个循环执行无限次数。出于这个原因,这样的循环被称为无限循环。break语句:break语句用于终止整个循环的执行,完成后所有行代码break语句的执行。然后,它逐级的代码跟在循环结束。continue 语句:conti...原创 2019-03-23 22:26:25 · 2915 阅读 · 0 评论 -
Linux shell 字符串操作
shell脚本中对字符串的处理1 ${#变量名}作用:返回字符串的长度# foo="this is a test"# echo ${#foo} //返回字符串的长度142 ${变量名:offset:length}作用:截取字符串,length指定截取的长度,也可以不写,字符串的第一个字符的索引值为0# foo=“abcdefg”# echo ${foo:3...原创 2019-04-10 21:47:37 · 1181 阅读 · 1 评论 -
Linux shell while循环语句
for :明确循环次数while :不确定循环换次数while循环(1)while CONDITION;do statement statement <改变循环条件真假的语句>done编写脚本,计算1--100的和#!/bin/bash#sum=0i=1while [ $i -le 100 ];do le...原创 2019-04-01 19:32:44 · 21085 阅读 · 2 评论 -
Linux shell 函数应用示例01
函数Function的使用定义函数(1)函数名称() { ... ...}(2)function 函数名称{ ... ...}调用函数 函数名称也可以通过位置变量的方式给函数传递参数1、可以带function fun() 定义,也可以直接fun() 定义,不带任何参数。 2、参数返回,可以显示加:return...原创 2019-04-01 23:03:40 · 520 阅读 · 0 评论 -
Linux shell 函数应用示例02
nginx服务控制脚本:安装ngix[root@wei function]# yum install gcc pcre-devel openssl-devel[root@wei function]# tar xf nginx-1.14.2.tar.gz[root@wei function]# cd nginx-1.14.2[root@wei nginx-1.14.2]# ./c...原创 2019-04-02 19:39:29 · 511 阅读 · 0 评论 -
Linux shell变量详解
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。Shell 脚本She...原创 2019-03-14 20:16:52 · 921 阅读 · 0 评论