neo_will_mvp
昵称:Neo或者称呼为赵老师,资深Linux架构师,现任上海市莫上市公司的资深Linux架构师岗位,曾就职于苏州移动研发中心,任安全运维工程师,苏州阔地网络科技有限公司,曾任项目运维主管(★精通K8S,CKA,MYSQL,SHELL生产代码,PYTHON生产代码,Asible生产代码,ZABBIX管理,项目服务器软件搭建,LNMP搭建,证书免费申请等技术,苏州易极云商IT主管。(负责过海外办公室和机房路由器交换机服务器搭建部署及验收项目)
展开
-
Centos7.9yum切换本地源、阿里yum源、网易yum源、华为yum源以及清华大学yum源自动化Shell程序
如使用过程中有报错、不能使用等情况,请给我反馈谢谢各位。原创 2023-09-15 14:47:00 · 1401 阅读 · 0 评论 -
利用Figlet工具创建酷炫Linux Centos8服务器-登录欢迎界面-SHELL自动化编译安装代码
因为我们需要生成需要的特定字符,所以需要在当前服务器中安装Figlet,默认没有安装包的,其实如果我们也只要在一台环境中安装,然后需要什么字符只要复制到需要的服务器中,并不需要所有都安装。同样的,我们也可以利用此生成的字符用到脚本运行的开始起头部分,用ECHO分行标注就可以。最后,我们再退出当前SSH,然后重新登入。Figlet生成字符然后添加登入界面完全是自己的OEM Linux服务器。这里我们需要用Figlet生成需要的字符,然后才可以用到我们的开机还原界面中。根据上述的脚本,换成我们自己的字符。原创 2023-08-16 14:33:48 · 1678 阅读 · 0 评论 -
运行脚本:syntax error near unexpected token `$‘{\r‘
3、解决:在notepad++ 中,编辑→文档格式转换→转为Unix格式,然后再去Linux中运行脚本,就可以了。notepad++应该是大多数人必备的吧,就不需要去找别的类似于dos2unix的软件了。、原因:脚本是在Windows下写的,Windows和Linux的换行符号不同,所以在Linux中执行脚本的时候报错。2、查看:使用notepad++打开脚本,视图→ 显示符号→ 显示所有字符,如图所示,换行符是 CR LF,但是Linux的是LF。原创 2023-06-05 17:38:46 · 1177 阅读 · 0 评论 -
centos7或者centos8服务器系统下的shell脚本 中 “>“ 与 “>>“ 的区别
这是将 "hello world"写入到 log.log 日志中,但是如果log.log中有内容的话,它会将其清空再重新写入,这个用法有点像写入文件时用的 "w" 用法。写入到log.log中,但是没有清空log.log中原有的内容,而是追加到hello.log的末尾,这跟文件写入的 " a+ "一样。“ >> ”, 我们也是常用来记录 log 日志,但是它与 " > "还是有区别的,下面就来讲讲区别吧!在shell脚本中,我们经常会看到 “>” 和 “>>” 这两个符号,但是你知道这连个字符的区别吗?原创 2023-01-26 12:21:00 · 573 阅读 · 0 评论 -
[shell实战脚本]脚本监控一些ip是否某个端口开放,测试是否能连通
擅长SHELL自动化脚本和PYTHON自动化脚本,各种问题排错,部署各种服务等,会不断更新生产环境的自动化脚本分享给大家,希望大家关注本人博客。作者简介:电子科技大学毕业,位列国家“双一流”、“985工程”、“211工程”,参加上市公司达内时代科技集团有限公司Linux云计算培训,参加。上海交大慧谷IT培训中心JAVA课程培训,参加南京新华电脑专修学院网络工程应用培训,荣获Cisco的CCNP证书,红帽RHCE证书,Python应用基础培训,参加。甲骨文MySQL的OCP证书,原创 2022-10-25 15:42:04 · 1566 阅读 · 1 评论 -
shell子串截取的三种用法:
使用Shell完成各种Linux运维任务时,一旦涉及到判断、条件测试等相关操作时,往往需要对相关的命令输出进行过滤,提取出符合要求的字符串。原创 2022-09-30 21:02:12 · 692 阅读 · 0 评论 -
Shell脚本之shift用法
shift(shift 1)命令每执行一次,变量的个数($#)减一(之前的$1变量被销毁,之后的$2就变成了$1),而变量值提前一位。若用户要求 Shell 在不知道位置变量个数的情况下,还能逐个的把参数一一处理,也就是在 $1 后为 $2,在 $2 后面为 $3 等。Shift 命令还有另外一个重要用途, Bsh 定义了9个位置变量,从 $1 到 $9,这并不意味着用户在命令行只能使用9个参数,借助 shift 命令可以访问多于9个的参数。echo "第一个参数为: $1 参数个数为: $#"原创 2022-09-29 20:54:22 · 1369 阅读 · 0 评论 -
编写myhttpd服务shell脚本
作为系统服务脚本,应该将脚本复制到/etc/init.d/目录下,还应该在脚本开头添加chkconfig管理参数、description服务描述。服务脚本的控制参数通过位置变量 $1 传入,使用case分支进行识别、执行相应的操作。为了查看及使用方便,将上述start、stop操作分别定义为函数。对于case未识别的其他参数,给出脚本的正确用法。简单起见,start、stop操作可直接调用源码安装的httpd的控制程序apachectl,通过if判断执行结果,分别给出“确定”或“失败”的提示。原创 2022-09-29 20:32:33 · 120 阅读 · 0 评论 -
shell echo -n 和echo -e 参数意义
nnn 插入nnn(八进制)所代表的ASCII字符;\r 光标移至行首,但不换行;echo -e 处理特殊字符。\c 最后不加上换行符号;\n 换行且光标移至行首;echo -n 不换行输出。\b 删除前一个字符;仍旧停留在原来的位置;原创 2022-09-29 19:53:52 · 707 阅读 · 0 评论 -
【达内shell脚本实战案例】一个funexpr.sh脚本:由用户在执行时提供2个整数值参数,计算这2个整数的加、减、乘、除结果
针对给定的两个整数,四则运算可以视为一组操作,可以定义为一个函数,依次负责加减乘除运算并输出结果。用户在执行时提供2个整数参数,这个可以通过位置变量$1、$2读入。调用函数时,将用户提供的两个参数传递给函数处理。步骤一:编写funexpr.sh脚本。2)根据实现思路编写脚本文件。1)任务需求及思路分析。原创 2022-09-28 21:02:44 · 468 阅读 · 0 评论 -
【shell脚本实战】Centos8使用case分支编写控制nginx服务开启关闭重启的脚本
【代码】【shell脚本实战】Centos8使用case分支编写控制nginx服务开启关闭重启的脚本。原创 2022-09-27 20:34:52 · 825 阅读 · 0 评论 -
检测192.168.4.0/24网段,列出不在线的主机地址的shell脚本
检测目标是一个网段,其网络部分“192.168.4.”可以作为固定的前缀;而主机部分包括从1~254连续的地址,所以可结合while循环和自增变量进行控制。要求的是“检测192.168.4.0/24网段,列出不在线的主机地址”。检测方法仍然采用ping,参考此前的主机检测脚本。2)根据实现思路编写脚本。1)任务需求及思路分析。原创 2022-09-23 16:15:42 · 600 阅读 · 0 评论 -
批量删除用户账号stu1-stu20的shell脚本(while循环)
针对前面执行uaddwhile.sh脚本批量添加的用户账号,再建立一个批量删除这些账号的脚本udelwhile.sh。结构类似,只要替换为删除相关的操作即可。批量删除用户账号stu1-stu20。原创 2022-09-23 16:08:41 · 624 阅读 · 0 评论 -
批量添加用户账号stu1-stu20的shell脚本(while循环)
添加的账号有固定的前缀stu(练习中可自行设置),多个账号从1开始编号,比如stu1、stu2、stu3、……—— 编写脚本uaddwhile.sh,实现批量添加这20个用户账号的功能,密码均设为123456。步骤一:批量添加用户账号stu1-stu20。现此案例需要按照如下步骤进行。原创 2022-09-23 16:06:01 · 1214 阅读 · 0 评论 -
批量检测多个主机的存活状态的shell脚本
已知IP地址存放在ipadds.txt文件内,那么可以采用“变量替换+for循环”的方式获取每一个IP地址;针对每一个IP地址执行ping检测,方法可参考上一章if选择示例中主机存活检测的方法。2)使用for循环整理实现思路。3)根据实现思路编写脚本。1)任务需求及思路分析。原创 2022-09-23 15:58:25 · 376 阅读 · 0 评论 -
pureftp是解决linux向windows共享时 中文乱码的软件,pureftp安装脚本
pureftp是解决linux向windows共享时 中文乱码的软件,pureftp安装脚本原创 2022-09-22 15:52:05 · 372 阅读 · 0 评论 -
shell中 -eq,-ne,-gt,-lt,-ge,-le数字比较符(整数值操作符)
2、-eq,-ne等比较符只能用于数字比较,有字符也会先转换成数字然后进行比较。1、在shell中进行比较时,结果为0代表真,为1代表假。原创 2022-09-17 22:37:04 · 5268 阅读 · 1 评论 -
shell编程之命令替换
若被引用的命令输出有多行,则变量的输出需加引用,若不加引用,则输出的内容中会删除换行符,文件名之间会使用默认的空来填充,即输出的内容只占一行。命令替换指的是将命令的标准输出作为值赋给某个变量,是shell编程中使用非常频繁的功能。原创 2022-09-17 22:20:16 · 2454 阅读 · 0 评论 -
位置变量及实例
echo 1234567 | passwd --stdin $1 &> /dev/null #stdin什么意思。echo $1 ${10} (查看第1,10个位置参数)在执行脚本时,提供用户名作为参数。快速添加用户,并设置好登陆密码。将登陆密码设为1234567。在执行脚本时提供命令行参数。表示为$n,n为序号。原创 2022-09-15 20:35:39 · 249 阅读 · 0 评论 -
快速搭建FTP服务的shell脚本
需求:为新装的服务器搭好vsftpd服务。-装包、起服务、设开机自运行。-通过脚本实现上述操作。原创 2022-09-15 16:28:42 · 370 阅读 · 0 评论 -
系统运行时间shell简单脚本
【代码】系统运行时间shell简单脚本。原创 2022-09-14 17:52:30 · 271 阅读 · 0 评论 -
远程唤醒windows的shell脚本
远程唤醒windows的shell脚本原创 2022-09-05 14:53:03 · 532 阅读 · 0 评论 -
shell脚本学习之 live-test.sh脚本
!/bin/bashdodonewait。原创 2022-08-29 15:33:04 · 208 阅读 · 0 评论 -
grep与egrep
个人觉得egrep比较好用,感觉改良了grep的一些不可以直接操作的东西,但是总体来说还是没太大区别的,都是一个过滤工具。grep 和 egrep 都要通过 正则表达式来筛选我们想要的东西,只能筛选文本内容,不能对目录筛选,如果想筛选目录可以通过管道把目录传过去,或者把目录存到文件里头再筛选–color=auto:对匹配到的文本着色后高亮显示这个是grep的别名alias e...原创 2020-03-26 18:18:29 · 486 阅读 · 0 评论 -
linux shell 指令 诸如-d, -f, -e之类的判断表达式
文件比较运算符-e filename 如果 filename存在,则为真 [ -e /var/log/syslog ]-d filename 如果 filename为目录,则为真 [ -d /tmp/mydir ]-f filename 如果 filename为常规文件,则为真 [ -f /usr/bin/grep ]-L filename 如果 filename为符号链接,...原创 2020-03-26 17:39:04 · 215 阅读 · 0 评论 -
Linux Shell函数定义与调用
一、Shell函数定义格式shell函数定义格式,各部分说明如下:[ function ]等中括号括起来部分----表示可选(即可有可无)your_function_name部分----为函数名your_shell_commands部分----为函数代码;shell一般以行为单位,但可以使用“\”换行,也可以在单行内使用“;”作为分隔符return int部分----shell...原创 2020-03-16 11:29:19 · 246 阅读 · 0 评论 -
while条件测试和until条件测试和for循环流程图
Shell中可以采用while循环来实现需要进行循环的操作。语法结构如下:while expdocommanddone执行过程:while将测试exp的返回值,如果返回值为true则执行循环体的命令,返回值为false则不执行循环。循环完成后会进入下一次循环之前将再次测试。如果已知循环次数,可以用计数的方式控制循环,在达到规定的循环次数后退出循环。示例:#同...原创 2020-03-13 11:20:11 · 1716 阅读 · 0 评论 -
linux shell中的case语句用法
格式:case $变量名 in 模式1) 命令序列1 ;; 模式2) 命令序列2 ;; *) 默认执行的命令序列 ;; esac case语句实现一种分支结构,语法如下:caseexprin #expr为表达式parrern1)#若e...原创 2020-03-13 10:54:11 · 3703 阅读 · 0 评论 -
文件判断条件和数字判断条件
原创 2020-03-13 10:18:36 · 166 阅读 · 0 评论 -
centos6.8编写shell脚本实现自动化搭建安装LNMP平台全过程配置详解
注意:如果是输入的是字母的或者是输入等于0时,则会出现以下两种情况!!!查看端口:进到Nginx根目录查看创建好的测试网页:注意:关闭防火墙或者设置防火墙规则!!!访问Nginx网页:访问PHP测试页:访问地址:192.168.197.180/dog1.php访问MySQL测试页:访问地址:192.168.197.180/dog2.php...转载 2019-02-26 21:39:39 · 300 阅读 · 0 评论 -
Zabbix实现自动发现端口并监控
1、新建客户端需要的脚本# vim discovertcpport.sh #!/bin/bashportarray=(`sudo netstat -tnlp|egrep -i "$1"|awk {'print $4'}|awk -F':' '{if ($NF~/^[0-9]*$/) print $NF}'|sort|uniq`)length=${#portarray[@]}pr...原创 2019-02-27 10:54:29 · 507 阅读 · 0 评论 -
Centos7.2:修改ulimit -c生成core文件
每个进程其实都有一组资源限制,而这些资源限制会随着当前进程的fork而继承下来。shell本身是有一组资源限制的,如果你在某个shell下直接执行一条命令,那么这个新进程一般就继承了shell的资源限制。今天工作中遇到一个不确定的bug,为了测试那段代码到底会不会搞崩,就运行它到bug处,看看有没有出core文件==》一直没有出core文件,后来发现是ulimit -c设置的是0,导致...原创 2019-03-27 15:28:13 · 2146 阅读 · 0 评论 -
[Shell基础] 执行脚本并输出日志文件
shell 错误输出重定向到标准输出./tmp/test.sh > /tmp/test.log 2>&1>和<是文件重定向符。那么1和2是什么?shell中每个进程都和三个系统文件相关联标准输入stdin标准输出stdout标准错误stderr三个系统文件的文件描述符分别为0,1和2。所以这里2>&1的意思就是将标准错误也输出到...原创 2019-06-26 09:41:09 · 2448 阅读 · 0 评论 -
shell 中 '>' 与‘>>’ 的区别
在shell中'>'为创建: echo “hello shell”> out.txt'>>' 为追加:echo “hello shell”>> out.txt当out.txt 文本不存在时,'>'与‘>>’都会默认创建out.txt文本,并将hello shell 字符串保存到out.txt中当out.txt文本存在...原创 2019-07-14 22:13:26 · 653 阅读 · 0 评论 -
Shell实现将多行整合成一行以及行和列的转化
源内容:4 00000080AB345 00000080AB355 00000080AB366 00000080AB374 00000080AB3A180?9 00000080AA0C10 00000080AA0E4 00000080AA0F1 00000080AA105 00000080AA12194?9 00000080AA0C5 00000080AA0E5...原创 2019-07-15 09:46:52 · 2059 阅读 · 0 评论 -
zabbix自动发现与自动注册
为了满足监控企业成千上万台服务器,因此我们需要使用Zabbix批量监控来实现。批量监控有两种方式:自动发现和自动注册。前提被监控服务器需安装、配置并启动zabbix-agent服务,附一个简单的脚本:$ vim zabbix_agent_install.sh#!/bin/bash# 自动安装zabbix客户端zabbix_agent_version=zabbix-agent-...原创 2019-02-27 15:28:10 · 503 阅读 · 0 评论 -
Linux运维常用shell脚本实例(4)
目录1、统计和分析Apache日志2、屏蔽每分钟访问超过200的IP3、屏蔽每分钟SSH暴力破解超过10次的IP4、监控目录,将新创建的文件名追加到日志中5、监控LINUX目录和文件变化6、查看网卡实时流量7、Nginx启动脚本8、检查网站可用性9.统计当前目录中以.html结尾的文件总大小10.crontab操作11、contab操作案例12、co...转载 2018-08-29 20:39:09 · 851 阅读 · 0 评论 -
shell脚本---函数
一、我对函数的理解就是:编写shell脚本时,你经常会发现在多个地方使用了同一段代码。如果只是一小段代码,一般也无关紧要。但是要在shell脚本中多次重写大块代码段,那就太累人了。bash shell提供的用户自定义函数功能就可以解决这个问题。二、创建函数的四种方法:前三种是在脚本中创建,第四种是在命令行创建。第一种、 function name () { comman...原创 2019-02-26 21:35:08 · 148 阅读 · 0 评论 -
centos6 shell 中判断一个变量是否为空 的方法
判断一个脚本中的变量是否为空,我写了一个这样的shell脚本:#!/bin/sh#filename: test.shpara1=if [ ! -n $para1 ]; then echo "IS NULL"else echo "NOT NULL"fi 然后把该脚本:test.sh通过chmod +x 改为可以执行的脚本,执行后输出的结果为: NOT NULL,很是奇怪,最...原创 2019-02-24 16:37:33 · 1528 阅读 · 0 评论 -
Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。 $# 传递给脚本或函数的参数个数。 $* 传递给脚本或函数的所有参数。 $@ 传递给脚本或函数的所有参数。被双引号(" ")包含时,与 $* 稍有不同,下面将会讲到。 $? 上...原创 2019-01-10 14:17:22 · 132 阅读 · 0 评论