shell
case语法
case "$1" in
start)
start;;
stop)
stop;;
*)
usage;;
esac
查看系统32位还是64位
$uname -m
x86_64
$arch
x86_64
grep
grep命令hang住的问题
$ sh --version
GNU bash, version 3.2.25(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2005 Free Software Foundation, Inc.
# 这行命令会一直卡住,直到按下ctrl+c终止命令执行后才会输出grep的结果
$ grep "Full GC" gc.log | cut -d' ' -f11
# 可以通过cat + 管道的方式解决(需要注意如果文件特别大时,不适用cat命令)
$ cat gc.log | grep "Full GC" | cut -d' ' -f11
提取正则匹配的字段
# 文件内容
$ cat gc.log
27.427: [GC [PSYoungGen: 575772K->143524K(611072K)] 898332K->529514K(1079168K), 0.4843210 secs] [Times: user=0.87 sys=0.09, real=0.48 secs]
27.911: [Full GC [PSYoungGen: 143524K->0K(611072K)] [PSOldGen: 385990K->415894K(586240K)] 529514K->415894K(1197312K) [PSPermGen: 18180K->18180K(29824K)], 1.5263920 secs] [Times: user=1.50 sys=0.02, real=1.53 secs]
# 提取 real=xx secs 中间的 xx,也就是gc的时间
$ grep -Po "(?<=real\=).* (?=secs)" gc.log
0.48
1.53
查看log
cat x.log|grep -Eo "[a-zA-Z]*Exception" | sort | uniq -c | sort -nr
sed
替换文件中的行
$ sed -i "s/<groups>.*<\/groups>/<groups>cat<\/groups>/g" pom.xml
添加行
# /a 表示在正则匹配结果行的下一行插入
sed -i '/\[mysqld\]/a\default-character-set=utf8' /etc/my.cnf
# /i 表示在正则匹配结果行的前一行插入
sed -i '/\[mysqld\]/i\default-character-set=utf8' /etc/my.cnf
awk
基本的awk命令
$ awk 'BEGIN {FS=" "} {print $0} END {}' a.txt
# begin后面的{} 表示在awk命令最开始执行
# FS 表示分隔符
# 中间的{} 表示对每一行的处理
# end后面的{} 表示在最后执行
分析gc日志,提取时间
# 如果第2列 GC,提取第6列数据相加,最后输出
awk 'BEGIN {} {if ($2=="[GC") t+=$6} END { print t }' gc.log
分享到:
相关推荐
Linux系统自动不停重启并计数的shell脚本
在linux下使用此脚本可以自定义日志,记录所有的shell命令
Linux常用的系统监控shell脚本
创建Shell脚本文件,编写如下过程:首先创建MAC地址的存储文件,然后使用arping命令,根据IP地址探测局域网中的主机获取对应的信息记录,应用grep命令、sed命令、awk命令对信息记录进行筛选,最后将筛选后的信息通过...
linux shell写的通讯录脚本,有增删改查,id自增长功能,
unixShell脚本学习记录,是自己学unixShell所做的笔记,暂时只做到第16章
shell-history, 获取用户的shell的命令历史记录 壳历史 获取用户 shell的命令历史。安装$ npm install --save shell-history用法const shellHistory = require('shell-history'
Shell Sample 博文链接:https://flyfoxs.iteye.com/blog/1563992
详细记录了vxworks的shell命令,对于初学vxworks的是极好的资料
您可能感兴趣的文章:linux中 shell 历史命令记录功能用来记录登录后使用命令的shell脚本PowerShell小技巧之定时记录操作系统行为PowerShell时间记录脚本Powershell小技巧之记录脚本的操作Powershell小技巧之用变量...
批量检测端口并导出记录 附件中的telnet.sh为执行脚本 ip.txt为IP地址,端口在脚本中自定 实现多IP多端口 默认路径/root 上传到服务器默认路径下直接可以使用 运行完成后: log.txt为记录清单
【shell脚本】shell脚本之概念、运行方式、变量的使用、交互式脚本、运算(shell脚本基础学习一) shell概念 --- 编写执行--- 变量 --- 运算--- shell脚本 /bin/bash 默认解释器 cat /etc/shells 查看所有解释器 ...
第1章 BashShell命令 6 1.1 Shell提示符 6 1.2 文件与目录Shell命令 7 1.2.1 更改目录命令(cd) 7 1.2.2 列表命令(ls) 7 1.2.3 操作文件命令 10 1.2.4 目录处理命令 14 1.2.5 查看文件内容命令 15 1.3 监控程序 20 ...
本脚本通过shell编程,可以将需要批量执行的命令记录在命令文本,然后通过脚本批量刷新执行。本例提供在单台交换机上的批量操作,如需要同时在多台上同时执行批量命令,可以QQ联系。
实验任务一:编写一个Shell过程完成如下功能(必须在脚本中使用函数):1、程序接受3个参数:$1、$2和$3,合并两个$1、$2文件为$3,并显示,三个文件均为文本文件。2、如果缺少$3,那么先报告缺少$3,然后将合并后的...
android adb shell 命令大全 1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): android create avd --name 名称 --...
使用shell脚本和nodejs记录和显示speedtest
2、这是一个纯shell脚本实现的示例程序 3、实现用户注册、登录功能 4、实现登录用户创建聊天室并作为群主功能 5、实现登录用户根据聊天室名称加入聊天室功能 6、实现登录用户根据群主名称加入对应的聊天室功能 7、...
文档较为详细的记录了vxworks操作系统的shell下的调试方法,结合实际情况给出了分析,并且列出了常用的较为关键的shell命令,对于实际工程的开发非常有帮助
随着业务增长,日志量不断加大,清理日志成为定期的日常任务,本节所提供的shell脚本配合crontab可实现对日志的定时清理及压缩存储,内置参数配置及运行参数,能满足常用的日志清理场景需求。(日志文件的格式请参考...