位置: 编程技术 - 正文

shell脚本实现分日志级别输出的方法(shell脚本-ge)

发布时间:2024-02-27

推荐整理分享shell脚本实现分日志级别输出的方法(shell脚本-ge),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:shell脚本-ge,shell脚本一百例,shell脚本实现分段函数的输出,shell脚本分割,shell脚本实现分段函数的输出,shell脚本实现分段函数的输出,shell脚本中的分号,shell脚本实现分段函数的输出,内容如对您有帮助,希望把文章链接给更多的朋友!

shell脚本如何优雅的记录日志信息,下面让我们一步一步,让shell脚本的日志也变得高端起来,实现如下功能

①设定日志级别,实现可以输出不同级别的日志信息,方便调试

②日志格式类似为:[日志级别] 时间 funcname:函数名 [lineno:行号] 日志信息

③不同级别,设定不同颜色

④让其变为函数库文件,重用代码

下面看看我用shell记录日志的进化之路

1.最简单的日志记录方式

对于刚入门的同学,记录日志一般用echo加重定向方式,这应该是最原始的方式了^_^

echo "log message" > file

2.简单函数封装,简化重复写重定向到日志文件

shell脚本实现分日志级别输出的方法(shell脚本-ge)

当你想记录的日志变多,你得重复的写echo “”>$logfile,这也是件挺麻烦的事情,于是我就写了个log函数,这样修改的时候也比较方便。

3.实现日志的级别不同颜色输出

某天使用某脚本的时候,报错了确没发现,于是就想将报错信息用不同颜色字体,这样会稍微友好一点,请看下面函数

4.实现设定日志级别,输出不同级别以上的日志,方便调试

学了Python的日志模块后,想着如何像python那样,可以设定日志级别,比如设定debug,那么只有debug级别以上的日志会输出,而且日志的格式也支持定义,常见格式 如下:[日志级别] 时间 funcname:函数名 [lineno:行号] 日志信息

请看如下的log函数:大家可以将log函数放到一个单独文件,称为函数库文件,然后写脚本的时候,通过source或 . 命令引入,就想python的导入模块一样,重用log的代码

输出如下:

在写这个函数的遇到一个问题就是不能用内建变量$LINENO来取得调用的行号,只能取得log函数中定义$LINENO那一行,搜了许久找到的解决办法是利用caller命令,关于caller命令的用法,如下:

5.caller的用法

caller命令放到函数中, 将会在stdout上打印出函数的调用者信息.,caller命令也可以在一个被source的脚本中返回调用者信息. 当然这个调用者就是source这个脚本的脚本. 就像函数一样, 这是一个”子例程调用”.你会发现这个命令在调试的时候特别有用.

以上这篇shell脚本实现分日志级别输出的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

Linux shell脚本输出日志笔记整理(必看篇) 1、日志方法简介:#日志名称log="./upgrade.log"#操作日志存放路径fsize=#如果日志大小超过上限,则保存旧日志,重新生成日志文件exec2$log#如果执行过

详解Linux 中五个重启命令 一、Linux的五个重启命令1、shutdown2、poweroff3、init4、reboot5、halt二、五个重启命令的具体说明shutdownreboot在linux下一些常用的关机/重启命令有shutdown、halt

完美解决ntp的错误问题no server suitable for synchronization fo 当用ntpdate-d来查询时会发现导致noserversuitableforsynchronizationfound的错误的信息有以下2个:错误1.Serverdropped:Stratatoohigh在ntp客户端运行ntpdateserverIP,出现noser

标签: shell脚本-ge

本文链接地址:https://www.jiuchutong.com/biancheng/374640.html 转载请保留说明!

上一篇:shell将脚本输出结果记录到日志文件的实现(shell 输出)

下一篇:Linux shell脚本输出日志笔记整理(必看篇)(shell脚本输入)

  • 税种核定在电子版怎么查
  • 分公司所得税汇算清缴
  • 文化建设费退税会计分录怎么做
  • 工商年报最迟什么时候申报
  • 进项税额计入其他应付款是什么意思
  • 卖胶卷的店
  • 商铺售后回租会计处理
  • 迟延履行利息记什么科目?
  • 可供出售金融资产和长期股权投资
  • 转让金融资产的税率
  • 企业房产税如何申报缴纳
  • 机动车类专用发票
  • 发票一直显示在报送中
  • 方案讲解:关于员工激励的税收筹划
  • 生物性资产是什么
  • 个税免税收入填错了怎么办
  • 季初从业人数和季末从业人数怎么填
  • 公司还没有成立,前期的费用怎么开发票呢
  • 现金流量表附表的其他指的是什么
  • 进项税额多出来怎么处理
  • 招待客人买的烟计入业务招待费吗
  • 营改增建筑业税率变化时间
  • 红字发票怎么填申报表表二
  • 专项储备属于什么科目代码
  • 股份制企业是什么
  • php类的作用
  • PHP:pg_lo_truncate()的用法_PostgreSQL函数
  • pgptray.exe - pgptray是什么进程 有什么用
  • 盛开的樱花和姬子的故事
  • 支付的食堂费用怎么入账
  • 应交增值税转入营业外收入摘要怎么写
  • 应收账款在贷方如何平账
  • thinkphp框架的作用
  • 增值税业务发生的时间
  • 计算机专业的毕业设计作品新颖
  • 手撕代码是啥意思
  • javascriptjs
  • 一定要确认收入的时候才能开票吗
  • 应收票据包括哪些项目内容
  • 怎么理解中国实际
  • 计提工资薪金
  • 个体户一直未申请怎么办
  • 沙箱支付宝app正式版
  • 通讯补贴算福利费吗
  • 建筑行业 营改增
  • sql 临时数据
  • 客户货款打到私人微信,删除公司电脑数据
  • 增值税直接计算法间接计算法举例
  • 什么是年化收益和绝对利率
  • 商贸企业增值税税率是多少
  • 弃置费用预计负债的会计处理
  • 应交增值税的结转怎么算
  • 2020发票丢失新规
  • 员工垫付的费用会计分录
  • 连续三个月发烧怎么回事
  • 闲置固定资产如何折旧
  • 应付款多付了怎么入账
  • 增值税专用发票丢了怎么补救
  • 长期挂账其他应付款
  • 以前年度多计提的社保费怎么冲回
  • 新冠肺炎疫情相关租金减让
  • 工业企业的材料销售收入应计入什么
  • sql教程
  • Windows 10 与 MySQL 5.5 安装使用及免安装使用详细教程(图文)
  • FreeBSD下zfs: failed with error 6错误如何解决?
  • 高危补丁该不该修补
  • linux命令行查找
  • mcupdate.dll
  • windows 10 开始菜单
  • javascript中的数组可以存放任何类型的数据
  • Extjs ajax同步请求时post方式参数发送方式
  • bootstrap 下拉按钮
  • 排序方法python
  • three. js
  • 异步任务管理器
  • shell编程$1
  • 云南省地方税务局公告2017年第2号
  • 国税系统公务员调动
  • 江苏省国地税合并
  • 税务机关宣传
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号