zoukankan      html  css  js  c++  java
  • linux 日常中会用到的命令(持续更新)

    1. grep

      比如,我要查看www目录下所有包含   “聊天室”  的文件

    grep -rn "聊天室" *

      

      比如我要把  www  目录下所有文件中的    聊天室   替换为   哈哈哈

    grep -rl 聊天室 ./ | xargs sed -i "s/聊天室/哈哈哈/g"

      结果我就不贴了

     2. vim文本内容替换

      命令::s/from/to/g  (将当前行中所有from替换成to)   , 加上c,如::s/from/to/gc   (将当前行中所有from替换成to,但每次替换前都会询问用户确认此操作)

    3.awk  (一般用来做统计)

      

    场景:awk统计日志中相同IP的访问次数
    基本结构:
    awk 'BEGIN{ print "start" } pattern{ commands } END{ print "end" }' file
    日志格式: 180.153.114.199 - - [03/Jul/2013:14:44:43 +0800] GET /wp-login.php?redirect_to=http%3A%2F%2Fdemo.catjia.com%2Fwp-admin%2Fplugin-install.php%3Ftab%3Dsearch%26s%3DVasiliki%26plugin-search-input%3D%25E6%2590%259C%25E7%25B4%25A2%25E6%258F%2592%25E4%25BB%25B6&reauth=1 HTTP/1.1 200 2355 - Mozilla/4.0 - 实现命令:awk '{a[$1]+=1;}END{for(i in a){print a[i]" " i;}}' log_url(日志路径)

    命令:awk '{a[$1]+=1;}END{for(i in a){print a[i]" " i;}}' log_url(日志路径)
    结果实例:
      2 101.226.33.200
      2 101.226.66.175

    排序:awk '{a[$1]+=1;}END{for(i in a){print a[i]" " i;}}' log_url(日志路径) | sort (加上sort就行,如果需要倒叙,加上 -r 参数,默认按第一个字符排,所以再加上 -g)

    最终结果:
      200 180.153.206.34
      40 180.153.114.199
      10 113.110.176.131


    场景:awk统计访问日志前十的IP
    日志格式:2013-10-29 10:26:09, INFO, send toEmail=wuas6662@163.com,templateId=23,titleId=11,type=3,sendEmail=noreply+renrenzhichang@mail.xiaozhao.com,ip=10.3.22.134,mailType=4,emailId=526f1bd8c8f2a90213662a67
    命令:cat mail-2013-10-28.log | awk -F ',' '{print $8}' | sort | uniq -c | sort -k1nr | head -10

    4.sed

    应用场景:字符串替换
    命令:sed 's/stringa1/stringa2/g' example.txt
    说明:将example.txt文件中的 "string1" 替换成 "string2" 
    
    应用场景:文件中删除所有空白行
    命令:sed '/^$/d' example.txt 从example.txt
    
    应用场景:从example.txt文件中删除所有注释和空白行 
    命令:sed '/ *#/d; /^$/d' example.txt
    
    应用场景:查看只包含词汇 "string1"的行 
    命令:sed -n '/stringa1/p'

    待续

  • 相关阅读:
    oracle客户端服务端字符集-解决乱码
    ORA-04089: 无法对 SYS 拥有的对象创建触发器
    ORA-01109:数据库未打开(解决)
    系统重装
    mybatis实现多表联合查询
    hibernate实现多表联合查询
    GitHub搭建博客过程
    mybatis&Hibernate区别
    IDEA搭建ssm框架测试衍生出的问题The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:Developjdk7jdk1.7.0_79in;
    IDEA创建maven项目jar更新缓慢问题
  • 原文地址:https://www.cnblogs.com/chenhaoyu/p/9648180.html
Copyright © 2011-2022 走看看