`
tinyhema
  • 浏览: 153290 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

shell脚本记录

 
阅读更多
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
    
    分享到:
    评论

    相关推荐

      250个shell脚本

      Shell脚本是Linux/Unix操作系统中的强大工具,它允许用户编写一系列命令,形成自动化任务,以提高工作效率。本文档收集了250个实用的Shell脚本实例,涵盖了多个应用场景,包括系统管理、安全防护、数据库备份等核心...

      linux下shell脚本实现数据的导出

      总结来说,这个场景涉及到了Linux下的shell脚本编写,主要是使用`exp`命令导出Oracle数据库中的数据,并通过Java程序来调用这个脚本。这在日常的运维工作中非常常见,通过这种方式可以实现自动化数据备份,提高工作...

      解决Unity不能调用shell脚本传递参数的问题

      ### 解决Unity不能调用shell脚本传递参数的问题 在Unity开发过程中,有时我们需要与操作系统进行交互,例如执行shell脚本来处理一些特定的任务。但在实际操作中,可能会遇到Unity无法正确调用shell脚本并传递参数的...

      一个批量域名解析的Shell脚本例子

      标题中的“一个批量域名解析的Shell脚本例子”是指通过Shell脚本来实现对大量域名进行DNS解析的功能。在IT行业中,这种操作常用于网络监控、安全分析或数据收集等场景。下面将详细介绍这个主题。 首先,`...

      23 个非常实用的 Shell 脚本实例.doc

      在实际工作中, Shell 脚本可以应用于各种自动化任务,例如文件备份、日志记录、网络监控等等。 Shell 脚本的编程技术也可以应用于其他领域,例如数据分析、机器学习等等。 Shell 脚本是一种强大的工具,能够帮助...

      Shell 脚本专家指南

      Shell脚本是Linux/Unix操作系统中非常强大的工具,它允许用户编写一系列命令并自动执行它们,这些命令通常以bash(Bourne Again SHell)或其他类型的shell(如sh、csh、ksh等)编写而成。Shell脚本广泛用于系统管理...

      unix shell脚本编程

      Unix Shell脚本编程是Unix操作系统中一种强大的自动化工具,它允许用户编写一系列命令,形成一个可执行的文本文件,称为Shell脚本。这种脚本语言的功能强大且灵活,类似于高级编程语言,但更加轻量级,特别适合进行...

      Logcat及adb shell命令的bat脚本实现例子

      二是编写一个shell脚本(如`script.sh`)并将其推送到设备上,然后通过`adb shell sh script.sh`执行。如果在`bat`脚本中遇到进入`shell`后无法执行后续命令的问题,可能是因为没有正确处理命令的执行顺序或权限。...

      109个shell脚本合计

      Shell脚本是Linux/Unix操作系统中的强大工具,它允许用户编写一系列命令,形成自动化任务,以提高工作效率。本文档汇总了109个实用的Shell脚本实例,涵盖了多个应用场景,包括系统管理、网络监控、数据库备份等。...

      100个shell脚本合集

      6. 查看网卡实时流量脚本:通过shell脚本可以实时监测网络接口的流入流出流量,例如使用`netstat`或`ifconfig`命令获取数据,然后对数据进行处理和展示,帮助管理员了解网络状况。 7. 服务器资源监控:虽然未直接...

      Linux常用的系统监控shell脚本

      ### Linux常用的系统监控Shell脚本知识点解析 在Linux系统管理中,使用Shell脚本来监控系统的运行状态是一种常见且有效的手段。下面将详细解析几个典型的Linux系统监控Shell脚本,涵盖网络流量监控、CPU与内存使用...

      shell脚本学习指南,中文清晰带书签

      ### Shell脚本学习指南知识点详解 #### 一、Shell脚本概述 - **定义与作用**:Shell脚本是用于Unix/Linux系统中的自动化任务的一种编程语言。它通过一系列的命令来实现对系统的控制和管理,可以极大地提高工作效率...

      Linux下清理数据库shell脚本

      Shell脚本是Linux或类Unix操作系统中的一种程序设计语言,它允许用户通过命令行接口执行一系列命令。在"Linux下清理数据库shell脚本"这个主题中,我们关注的是如何编写一个bash shell脚本来自动化数据库的清理和备份...

      使用shell调用php脚本

      3. **结合其他shell命令**:shell脚本可以与其他命令组合,比如读取文件内容,或者将输出重定向到文件。例如: ```bash php -r 'echo "Hello, World!";' &gt; output.txt ``` 这将执行PHP的单行代码并把结果写入`output...

      Shell脚本批量添加CSV数据到MySQL

      在Unix/Linux环境中,Shell脚本允许我们编写一系列命令来执行自动化任务。这个脚本的目的就是读取`prov.csv`中的数据,并将其插入到MySQL数据库中的相应表中。脚本可能包含如下步骤: 1. 使用`cat`或`head`命令查看...

      Linux系统自动不停重启并计数的shell脚本

      Linux系统自动不停重启并计数的shell脚本

      Java 调用 Shell 命令

      下面是一个具体的Java类实现示例,用于调用Shell脚本并记录执行日志: ```java import java.io.*; import java.text.SimpleDateFormat; import java.util.Date; public class JavaShellUtil { private static ...

      tp5执行shell命令定时执行命令行运行php脚本

      ThinkPHP5(简称TP5)是一个流行的PHP框架,它提供了一种方式来实现这种定时任务,即通过执行shell命令在命令行模式下运行PHP脚本。这个过程涉及到多个知识点,包括TP5的命令行工具、shell命令以及定时任务的设置。 ...

      shell脚本自定义日志

      在linux下使用此脚本可以自定义日志,记录所有的shell命令

    Global site tag (gtag.js) - Google Analytics