zoukankan      html  css  js  c++  java
  • shell awk

    #!/bin/bash
    # for ((i=1;i<=10000;i++)); 
    # do 
    
    # c1=`shuf -i 1-10000 -n 1` #生成随机数
    # c2=`shuf -i 1-10000 -n 1`
    # c3=`shuf -i 1-10000 -n 1`
    # c4=`shuf -i 1-10000 -n 1`
    # echo $c1 $c2 $c3 $c4 >>awk_column.txt;
    # done
    -------上面注释的部分用来生成
    awk_column.txt
    
    
    c1=`shuf -i 1-10000 -n 1`
    c2=`shuf -i 1-10000 -n 1`
    awk 'BEGIN {} {if ($1 == exclude1 || $1 == exclude2){print NR,$1;}} END {}' exclude1=$c1 exclude2=$c2 awk_column.txt

    awk格式:

    BEGIN {} {pattern } END {}
    #BEGIN,END,中间, 3个部分都是可选
    #每一个{}都是一个循环体,会对文件中每一行进行迭代

    外部传入awk参数2种方式:

    第一种: -v (只能传一个参数)

    awk -v exclude1=$c1 'BEGIN {} {if ($1 == exclude1 ){print NR,$1;}} END {}' awk_column.txt

    第二种:

    awk 'BEGIN {} {if ($1 == exclude1 || $1 == exclude2){print NR,$1;}} END {}' exclude1=$c1 exclude2=$c2 awk_column.txt

    几个常量:

    NR:number of records, 行号
    NF:number of fields,有几列
    $0:执行过程中当前行的内容
    $1:执行过程中当前行的第一个字段内容
    $2:执行过程中当前行的第二个字段内容
    ......
  • 相关阅读:
    Centos7:mariadb替换mysql
    CentOS5 部署 戴尔OMSA
    《Zero MQ》
    可扩展的Web架构和分布式系统
    队列实现
    超级好用的正则表达式网站
    <转>undefined与null的区别
    JS事件
    sublime text 3 快捷键
    设置className的方式(不使用setAttribute)
  • 原文地址:https://www.cnblogs.com/lein-wang/p/4500570.html
Copyright © 2011-2022 走看看