![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
shell
叨叨软件测试
这个作者很懒,什么都没留下…
展开
-
Linux 日常操作
背景质量团队 Linux 日常操作培训,提升团队整体 Linux 水平。注: 以下所有命令都是在 Centos操作系统来进行演示。帮助命令及工具详见: Linux 帮助命令及工具用户和用户组命令说明useradd创建一个新用户或更新默认新用户信息usermod修改一个用户账户userdel删除用户账户和相关文件passwd修改用户密码chage更改用户密码过期信息id显示真实和有效的 UID 和 GIDsu切换用户sud原创 2020-08-27 21:57:04 · 156 阅读 · 0 评论 -
日志清理脚本-V0.0.3(增加多目录清理、正则表达式匹配、调试模式;部分细节优化)
需求背景解决某些中间件或者应用日志无法自动清理的情况,比如:Nacos 的 access 日志清理,临时目录文件清理等。简介Filename clear-logs.shRevision 0.0.3Date 2020/06/05Author jianglihengEmail jiang_liheng@163.comWebsite https://github.com/jiangl原创 2020-07-29 14:25:59 · 135 阅读 · 0 评论 -
Linux 打印文本部分行内容(前几行,指定行,中间几行,跨行,奇偶行,后几行,最后一行,匹配行)
背景打印对账文件最后一行汇总信息,通过钉钉定时发送到运维群。顺便总结下 Linux 打印文本部分行内容的各种方法。测试文本# 生成测试文本内容$ seq -f "%02g daodaotest" 1 10 > test.txt# 查看测试文本内容,并显示行号$ cat -n test.txt 1 01 daodaotest 2 02 daodaotest 3 03 daodaotest 4 04 daodaotest 5 05 daoda原创 2020-07-10 01:24:20 · 5360 阅读 · 0 评论 -
发送钉钉消息 Shell 脚本
需求背景生产环境定时监控凌晨跑批生成文件,并获取业务汇总信息发送到运维钉钉群。主要原因还是懒得半夜监控~变更记录Version 0.0.1 2020/06/08发送钉钉消息,支持 text,markdown 两种类型消息选项sh send-ding.sh [options] <value> ... * -a <value> 钉钉机器人 Webhook 地址的 access_token * -t <valu原创 2020-06-10 08:37:22 · 2381 阅读 · 0 评论 -
日志清理脚本
需求背景解决某些中间件或者应用日志无法自动清理的情况,比如:Nacos 的 access 日志。变更记录Version 0.0.1 2020/06/05删除 N 天前的日志文件,仅删除匹配 “.log” 的日志文件选项sh clear-logs.sh [options] <value> ... -p<value> 删除日志的路径,必输参数 -d<value>原创 2020-06-08 23:31:02 · 285 阅读 · 0 评论 -
Redis 日常运维脚本(增加集群批量删除 key 功能)
需求背景由于应用 bug 造成某些特定前缀的缓存出错,需要批量清理。Redis 日常运维脚本 中的 redis-tools.sh仅支持删除单个 key 和 全部清理,并未实现匹配特定前缀批量删除的功能。批量删除 key$ redis-cli --scan --pattern "party*" | xargs -L 1 redis-cli del变更记录Version 0.0.2 2020/05/16修正 inputYN 多次回车,导致参数丢失问题修正 部分描述信息,调整格式等增加原创 2020-05-17 17:15:26 · 527 阅读 · 0 评论 -
Shell 字符串操作符实例
字符串操作符表达式含义${parameter-word}parameter变量未声明,取默认值 word${parameter:-word}parameter变量未声明或值为空时,取默认值 word${parameter=word}parameter变量未声明,则取默认值 word${parameter:=word}parameter变量未声明或值为...原创 2020-05-01 11:34:01 · 164 阅读 · 0 评论 -
Redis 日常运维脚本
需求背景生产 Redis 日常运维需要。前提添加 Redis 可执行命令到系统环境变量中。$ cat redis-profile.shexport PATH=/usr/local/redis-5.0.7/src/:$PATH# 添加到系统环境变量$ cp redis-profile.sh /etc/profile.d/# 实时生效$ source /etc/profile.d...原创 2020-04-28 10:11:26 · 378 阅读 · 0 评论 -
Shell 变量引用实例
初学 Shell 编程时,对变量各种引用使用不太熟悉,走了很多弯路,本文记录变量引用的一些用法,希望对大家有所帮助。引用引用指将字符串用引用符号引起来,以防止特殊字符被 shell脚本解释为其他意义。 shell中定义了 4 种引用符号。引用符名称说明‘’单引号称全引用或弱引用,引用所有的字符“”双引号称部分引用或强引用,引用除美元符号($)、反引号(‘)...原创 2020-04-12 08:50:27 · 156 阅读 · 0 评论 -
shell 脚本常用调试方法
曾经我刚开始学习 shell 脚本时,除了知道用 echo 输出一些信息外,并不知道其他方法,仅仅依赖 echo 来查找错误,比较难调试且过程繁琐、效率低下。本文介绍下我常用的一些 shell 脚本调试方法,希望能对 shell 的初学者有所帮助。sh 命令调试选项(推荐)选项说明-c从-c后的字符串中读取命令。-n检查是否存在语法错误,但不会实际执行。-x...原创 2020-03-21 22:45:37 · 1037 阅读 · 0 评论 -
linux 下强大的 JSON 解析命令 jq
介绍jq is like sedfor JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed, awk, grepand friends let you play with text.jq 可以对 JSON 数据进行切片...原创 2020-03-14 22:59:58 · 365 阅读 · 0 评论 -
yum 下载全量依赖 rpm 包及离线安装(终极解决方案)
简介通常生产环境由于安全原因都无法访问互联网。此时就需要进行离线安装,主要有两种方式:源码编译、rpm包安装。源码编译耗费时间长且缺乏编译环境,所以一般都选择使用离线 rpm 包安装。验证环境Centos 7.2查看依赖包可以使用“yum deplist”命令来查找 rpm 包的依赖列表。例如,要查找“ansible”rpm的依赖包:$ yum deplist ansible软件包:...原创 2020-03-10 15:12:01 · 24554 阅读 · 5 评论 -
linux知识点系列之 umask
介绍umask(user’s mask)用来设置文件权限掩码。权限掩码是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。UNIX最初实现时不包含umask命令。1978年左右,在UNIX第七版中引入,用于解决权限掩码问题。Shell 命令在 Shell 中,使用 umask命令来设置权限掩码。umask [-S] [maskExpression] ...原创 2020-03-08 23:53:32 · 633 阅读 · 0 评论