- 博客(21)
- 收藏
- 关注
原创 创建user01-user20 随机六位数密码 a-z A-Z 0-9
一:创建的要求1)创建user01-user022)生成20组随机密码3)设置密码4)输出清单二:代码及测试结果adduser () {pw_txt=`mktemp pw.XXXXX`#1)创建用户for i in `seq -s ' ' -w 1 20` #-s表示横着输出,-w表示保持宽度,即把1 2 3 变成01 02 03这样do useradd user$idone#2)生成随机密码cat /dev/urandom | strings -6 |e
2021-10-28 10:26:21
885
原创 nginx安装脚本
一:安装的要求和大致流程#安装用户要是root#安装前准备 依赖包 源码包获得#安装#启动测试二:代码及测试结果check () { #检查当前用户是不是root if [ "$USER" != 'root' ];then echo "need to be root so that" exit 1 fi #检查wget命令 if [ ! -x /usr/bin/wget ];then ..
2021-10-28 10:21:28
263
原创 统计内存或者CPU占用率前十名的进程
一:监控目的掌握系统进程对系统资源的使用情况,掌握及其的动态二:监控方法(1)监控命令 ps:静态,显示上一秒的状态 top:动态(2)监控方法通过对任务管理器中的进程对内存或者CPU的使用情况进行整合,排序得出结论三:监控实现代码及测试结果#统计系统中前十名使用内存最多的进程memory () { #1、收集任务管理器信息 temp_file=`mkt...
2021-10-27 20:59:14
1163
原创 shell统计内存使用率
一:统计方法[root@localhost shell]# head -2 /proc/meminfoMemTotal: 2031912 kBMemFree: 1226748 kB[root@localhost shell]# head -2 /proc/meminfo |awk 'NR==1{t=$2}NR==2{f=$2;print(t-f)*100/t}'39.6309二:代码及测试结果#内存申请顺序 free-cache-buffer-swap...
2021-10-27 20:51:13
1420
原创 监控一个端口存活状态
一:监控方法(1)通过systemctl service 服务启动状态(2)lsof 查看端口是否存在(3)查看进程是否存在 【服务假死怎么办 压力过大 无法响应 服务down了,东西还在(僵尸进程)】(4)测试端口是否有响应 【推荐】 #telnet 协议二:代码及其测试结果#mainport_status () {temp_file=`mktemp port_status.XXX`#1、判断依赖命令teln...
2021-10-27 20:47:34
836
原创 使用shell脚本监控目标主机状态
一:监控方法ping ICMP协议 ping 通 host up;ping 不通 host down二:问题思考关于禁ping 防止DDOS,禁的是陌生人 禁止所有 允许你的Ip#满足条件:#网络有延迟 what's up 假警报问题#ping 的取值 报警阀值 3次全部失败 报警机器down#ping 的频率 秒级5秒或者1秒三:代码区及测试结果#mainfor ((i=1;i<4;i++));do ping -c1 $1 &...
2021-10-27 20:40:22
321
原创 awk语法
一:awk介绍 awk是一个行编辑器,可以把数据进行截取,同时完成数据的处理,输出awk语法awk [options] [BEGIN]{program} [EDN][file]awk程序运行优先级是:(1)BEGIN: 在开始处理数据流之前执行,可选项(2)program: 如何处理数据,必选(3)END: 处理完数据后执行,可选项二:awk基本用法---awk数据提取功能(1)提取字段(列)字段相关内置变量$0 表示整行文本 $1 ...
2021-10-25 12:45:35
323
原创 shell对文件的操作(sed命令)
一:sed命令sed是linux中提供的一个外部命令,他是一个行(流)编辑器,非交互式的对文件内容进行增删改查的操作,使用者只能在命令行输入编辑命令,指定文件名,然后再屏幕上查看输出。它和文本编辑器有本质的区别区别:文本编辑器:编辑对象是文件行编辑器:编辑对象是文本中的行sed语法:sed [options]'{command}[flags]' [filename]sed常用内部命令 a 在匹配后面添加 i 在匹配前面添加...
2021-10-24 15:00:36
550
原创 正则表达式
一:正则表达式与shellshell也支持正则表达式,但不是所有命令都支持正则表达式,常见的命令只有grep、sed、awk命令支持正则表达式注意:grep -E 和egrep 是等同的二:特殊字符定位符 说明 ^ 锚定开头以^a为a开头,默认锚定一个字符 $ 锚定结尾a$以a结尾,默认锚定一个字符 定位符使用技巧:同时锚定开头和结尾,做精准匹配;单一锚定开头和结尾,做模糊匹配【测试案例】egrep "^a...
2021-10-24 14:21:20
1233
原创 shell中的函数及运用
一:函数函数默认不会执行,除非你调用函数的优点:1.代码模块化,调用方便,节省内存2.代码模块化,代码量少,排错简单3.代码模块化,可以改变代码的执行顺序语法一:函数名(){ 代码块 return N}语法二:function 函数名{ 代码块 return N}二:函数的应用【例:nginx启动管理脚本】#variablesproc=nginxnginx_inst
2021-10-23 13:38:11
1067
原创 shell中的case语法
一:case语法case 变量 in条件1) 执行代码块1;;条件2) 执行代码块2;;.......esac注意:每个代码块执行完毕要以;;结尾,结尾代表结束,case结尾要倒过来写成esac【例:】read -p "num: " ncase $n in1) echo haha;;2) echo hehe;;*) echo "1|2";;esac【例:开门】...
2021-10-23 13:34:12
562
原创 shell中的while循环和until循环
一:while循环语法while [ condition ] #只有条件为真的时候,while才会循环,条件为假,停止循环 do commandsdone【条件可以是五种运算中的任意一种】【例:数学比较】read -p "Number:" num1while [ $num1 -gt 0 ] do echo "大于" sleep 3done【例:字符串比较】...
2021-10-22 16:59:05
583
原创 shell中的for循环语句
一:for语法(1)语法一for var in value1 value2 ...... do commandsdone例1:直接赋值,循环输出1-9数字for i in 1 2 3 4 5 6 7 8 9 do echo $idone例2:命令赋值,循环输出1-9数字for i in `seq 1 9` #seq是一个数数命令,seq 1 9代表..
2021-10-22 14:57:36
1167
原创 test/if判断比较运算
一:shell中的运算1、数学比较运算【整型】在shell比较运算中没有< > =,可以用man test查看运算符解释-eq 等于 -gt 大于 -lt 小于 -ge 大于或等于 -le 小于或等于 -ne 不等于 ...
2021-10-21 18:59:07
203
原创 Shell中的数组
一:基本数组数组可以让用户一次赋予多个值,需要读取数据只需要通过索引调用就可以读出(1)数组语法数组名称=(元素1 元素2 元素3...)ARRAY1=('a' 'b' 'c' 'd')(2)数组读出${数组名称[索引]}索引默认是元素在数组中的排队编号,默认第一个从0开始[root@localhost ~]# echo ${ARRAY1[2]}c(3)数组赋值方法1: 一次赋一个值ARRAY1[4]='E'方法2:一次赋多个值ARRAY2=('a' '
2021-10-21 14:20:14
954
原创 Shell中的变量
一:变量介绍在编程中,我们总有一些数据需要临时存放在内存,以待后续使用时快速读出。内存在系统启动的时候按照1B一个单位编号(16进制编号),并对内存的使用情况做记录,保存在内存跟踪表中计算的单位1B=8bit1KB=1024B1MB=1024KB1GB=1024MB1TB=1024GB1PB=1024TB二:变量分类1.本地变量(登录成功后加载到内存中):用户私有变量,只有本用户可以使用,保存在家目录下的.bash_profile、.bashrc文件中2.全局变量(用户登录之..
2021-10-21 11:59:50
185
原创 Shell程序交互(read命令)
read命令默认接受键盘的输入,回车符代表输入结束。当执行到read时,将暂停执行,等待用户输入。read命令选项-p 打印信息 -t 限定时间 -s 不回显,不显示 -n 输入字符个数 【简单举例<1>】#!/bin/bashclearecho -n -e "Login: "read accecho -n -e "Password: " read -s -t50 -n6 p..
2021-10-19 21:42:01
619
原创 Shell格式化输出
一:echo命令介绍echo的功能是在显示器上显示一段文字,一般起到一个提示的作用。输出的字符串间以空白字符隔开,并在最后加上换行号。命令选项1)-n不自动换行例:echo -n "aaa"2)-e 若字符串中出现以下字符,则特别加以处理,而不会把它当做一般文字输出:转义字符(只列举常用的一部分)\a 发出警告声\t 插入tab键(看起来是好几个空格)\n 换行且光标移动至行首\b 删除前一个字符...
2021-10-19 20:11:23
735
原创 Shell脚本语法规范
一:脚本组成#解释环境 #!/usr/bin/env bash | python | perl |#注释说明#执行代码1)脚本执行的环境#!/usr/bin/bash 2)#代表注释 #!是特例3)脚本信息#Author: xxx 作者#Created Time: 2021/10/18 17:00 脚本创建日期#Release: 1.0 ...
2021-10-19 18:16:26
277
原创 入门编写一个shell脚本
【2020全新shell脚本从入门到精通实战教程_哔哩哔哩_bilibili自学笔记】一:概念简括shell脚本就是将一个任务的所有命令按照执行的先后顺序,自上而下写入到一个文本文件中,然后给予执行权限。二:编写脚本【例:使用shell脚本下载Nginx】(1)保证虚拟机可以连得上网(2)在opt文件下创建一个新的文件mkdir /opt/shellcd /opt/shellmkdir shell_03(3)进入目录cd shell_03(4)创建一个脚.
2021-10-18 16:42:17
2138
1
原创 OpenStack组件简单介绍
各个组件的简单介绍Nova: 提供计算资源Glance: 提供镜像Cinder: 提供块存储资源Neutron: 提供网络资源Keystone: 提供认证Swift: 提供对象存储Horizon: 提供ui界面Cellometer: 计费(私有云不计费)Heat: 自动化部署简要概括各个组件安装时的步...
2021-10-18 13:54:16
562
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人