• Linux 指令


    查日志

    tail -500f XXX.log

    more
    more可翻页查看。 $ more XXX.log
    空格 space : 向下翻页
    Enter : 向下滚动一行
    /字符串 : 向下查询字符串 ,f : 显示当前行号, q : 退出, b : 往回翻页,只在文件有作用,对管道无作用。

    less
    less也是一页一页的查看,与more不同的是可以向上翻页

    $ less XXX.log

    空格 space : 向下翻一页 Enter : 向下一行 [PageDown] : 向下一页: [PageUp] : 向上一页 /字符串: 向下查询 ?字符串: 向上查询 n : 重复前一个查询 / 或 ? N : 反向前一个查询 / 或 ? q : 退出

    • vim service
    • G跳转到文件的末尾
    • ? +关键字搜索对应的记录
    • n往上查询,按N往下查询

    sed -n "29496,29516p" service.log:从29496行开始检索,到29516行结束

    cat -n service.log | tail -n +29496 | head -n 20:从29496行开始检索,往前推20条

    sed -n '/2018-05-18 16:24:01/,/2018-05-18 16:40:00/p' process.log.2018-05-18.log

     


    df -h 查磁盘空间
    du -bs file 查该文件夹多大

    find . -size +10M 查找超过 10m的文件

     时间戳 date +%s


     压缩命令:

    tar -zcvf 压缩文件名.tar.gz 被压缩文件名

    可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。

    解压缩命令:

    tar -zxvf 压缩文件名.tar.gz

    不解压情况查找压缩包内内容 

    .gz压缩包类型,可以用zgrep命令去搜索,例如:  zgrep –i "被查找的字符串" 文件名   

    其它压缩类型,例如zip好像就不能直接这样去搜索了,既然不能一步到位,那我们可以分步走,例如可以用:zcat 文件名|grep -c '被查找字符串内容'


    线上问题定位

    top

    jstack

    dump 文件 :sudo -u admin /bin/jstack 3117 > /home/dump01 

    dump出来的线程ID(nid)是十六进制的,而我们用TOP命令看到的线程ID是十进制的,所以要用 printf命令转换一下进制。然后用十六进制的ID去dmp里找到对应的线程。

    printf "ax\n”31558

    查询端口有多少个连接

    netstat -nat | grep 3306 -c

    查看ip  :ifconig 

     


    awk

     1.awk是一种编程语言,用于对文本和数据进行处理的

     2. 具有强大的文本格式化能力

     3. 利用命令awk,可以将一些文本整理成为我们想要的样子

     4. 命令awk是逐行进行处理的

    grep、sed、awk的简单比较

     1. 命令grep,更适合单纯的查找或匹配文本

     2. 命令sed,更适合对匹配到的文本进行编辑

     3. 命令awk,更适合文本格式化,对文本进行较复杂的格式处理。

    awk的基本语法 :awk [options] 'Pattern{Action}' file

    下面来说最常用的Action:print

     awk '{print $5}',表示输出df的信息的第5列,$5表示将当前行按照分隔符分割后的第5列,不指定分隔符时,默认使用空格作为分隔符,细心的你一定发现了,上述信息用的空格不止有一个,而是有连续多个空格,awk自动将连续的空格理解为一个分割符了。

    awk可以灵活的将我们指定的字符与每一列进行拼接,或者把指定的字符当做一个新列插入到原来的列中,也就是awk格式化文本能力的体现。

     

    AWK 包含两种特殊的模式:BEGIN 和 END。

    BEGIN 模式指定了处理文本之前需要执行的操作:

    END 模式指定了处理完所有行之后所需要执行的操作:

    如果我们想要awk先执行BEGIN模式指定的动作,再根据执我们自定义的动作去操作文本,该怎么办呢?示例如下

     


    netstat

    netstat -a 这条命令会列出所有的端口,包括监听的和未监听的。

    netstat -t 列出所有的tcp协议的端口。

    netstat -ua 表示列出所有的UDP协议的端口。

    找出程序运行的端口

    netstat -ap | grep '程序名'

    [root@bogon Test2017_3_7]# netstat -ap | grep './server'
    tcp        0      0 localhost:1024              *:*                         LISTEN      6130/./server       
    tcp        0      0 localhost:1024              localhost:40312             ESTABLISHED 6130/./server       
    You have new mail in /var/spool/mail/lzh

    找出端口的程序名

     netstat -ap | grep '端口号'

    [root@bogon Test2017_3_7]# netstat -ap | grep '1024'
    tcp        0      0 localhost:1024              *:*                         LISTEN      6130/./server       
    tcp        0      0 localhost:40312             localhost:1024              ESTABLISHED 6323/./client       
    tcp        0      0 localhost:1024              localhost:40312             ESTABLISHED 6130/./server   

    Sed

    • sed 's/stringa1/stringa2/g' example.txt 将example.txt文件中的 "string1" 替换成 "string2" 
    • sed '/^$/d' example.txt 从example.txt文件中删除所有空白行 
    • sed '/ *#/d; /^$/d' example.txt 从example.txt文件中删除所有注释和空白行 
    • echo 'esempio' | tr '[:lower:]' '[:upper:]' 合并上下单元格内容 
    • sed -e '1d' result.txt 从文件example.txt 中排除第一行 
    • sed -n '/aaaaa/p' 查看只包含词汇 "aaaaa"的行 
    • sed -e 's/ *$//' example.txt 删除每一行最后的空白字符 
    • sed -e 's/stringa1//g' example.txt 从文档中只删除词汇 "string1" 并保留剩余全部 
    • sed -n '1,5p;5q' example.txt 查看从第一行到第5行内容 
    • sed -n '5p;5q' example.txt 查看第5行 
    • sed -e 's/00*/0/g' example.txt 用单个零替换多个零 
    1. linux常用命令。iftop,netstat,htop,apt,yum,source,corn,docker等等。

    参考:http://www.zsythink.net/archives/category/linuxbase/

              https://www.cnblogs.com/huststl/p/8540775.html

  • 相关阅读:
    SQL SERVER 错误:查询处理器用尽了内部资源,无法生成查询计划。这种情况很少出现,只有在查询极其复杂或引用了大量表或分区时才会出现。请简化查询。如果您认为该消息的出现纯属错误,请与客户支持服务部门联系,了解详细信息。
    大数据第十五周 Spark编程基础实例——wordCount编程
    Qt判断文件或文件夹是否存在
    windows解决访问Github慢
    朴素贝叶斯算法-非模型
    Qt自绘系列
    QStackedWidget动态多界面
    C++判断两个指针指向的对象是否相同
    Qt之自绘控件
    Python2.7安装OpenCV错误:TypeError: ‘NoneType’ object is not iterable
  • 原文地址:https://www.cnblogs.com/dingpeng9055/p/11206313.html
Copyright © 2020-2023  润新知