• grep sed awk find用法


    grep -nE '(start|end)' $Filename | awk -F ":" '{print $1}' > $LINEFILE
    sed -n '9,19p' pvp_debug_log.csv 
    
    echo ./area_18/20141201/role_login.csv | sed 's/.*area_18.*/area_18/g'   将area_18提出
    
    echo ./area_18/20141201/role_login.csv | sed 's/.*area_[1-9]{2}.*/area_18/g'      [1-9]{2}  连续两个数字的
    
    sed '/AM_CXXFLAGS/d' Makefile.am  删除含有AM_CXXFLAGS的所有行
    
    sed  's////' 删除字符串中的/字符
    一般在sed 中替换都用单引号,如下边
    sed -in-place ‘s/8080/8001/g’ /home/work/server.xml
    但是如果需要把8001改成变量,如
    sed -in-place ’s/8080/$port/g‘ /home/work/server.xml
    这样就不成功。
    此时需要把单引号改成双引号,如下边例子
    $port=8001
    sed -in-place "s/8080/$port/g" /home/work/server.xml
    echo $line | awk '{for(i=3;i<NF;i++) {printf $i" "} printf "
    "}' 
    awk使用变量:awk '{print "'$var'"}'   " ' ' " 这种形式
    netstat -an | grep -E  "ESTABLISHED|WAIT",可以使用 | 来表达
    netstat -an | grep -e EST -e WAIT
    sort -k 2 指定排序的列
    cut -d' ' -f1 ~/.bash_history|sort -d | uniq -c|sort -nr|head
    #bash循环读入文件的每一行并处理
    cat afile | while read oneline
    do
        echo $oneline
    done
    

    PS:在grep和sed中, 和s都是无效的,要表示制表符和空格,只能直接敲入tab和空格键,这个在shell脚本中还好说,在命令行模式下就比较麻烦了,因为tab默认是会智能补全命令的,所以要在按tab之前按下ctrl+v,就可以把tab打出来了。

    find / -name content(目录或者文件名)

     cat logcharpter.log | awk '{if($5>="23:55:00" && $5<="23:59:59") print}' | wc -l 

  • 相关阅读:
    中介模式与外观模式(门面模式)区别
    java反射
    Spring注解@ResponseBody,@RequestBody
    Spring事务管理
    Junit运行在Spring环境下
    java开发常用到的jar包总结
    java二维数组
    Android开发之执行定时任务AlarmManager,Timer,Thread
    Android开发之Android Context,上下文(Activity Context, Application Context)
    Android开发之创建App Widget和更新Widget内容
  • 原文地址:https://www.cnblogs.com/bornfish/p/4168860.html
Copyright © 2020-2023  润新知