#!/bin/bash
# for ((i=;i<=;i++));
# do # c1=`shuf -i - -n ` #生成随机数
# c2=`shuf -i - -n `
# c3=`shuf -i - -n `
# c4=`shuf -i - -n `
# 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,有几列
$:执行过程中当前行的内容
$:执行过程中当前行的第一个字段内容
$:执行过程中当前行的第二个字段内容
......

shell awk的更多相关文章

  1. Shell awk文本处理,shell脚本编写

    Shell awk文本处理,shell脚本编写 一:内容包含awk.变量.运算符.if多分支 <a>语法糖: awk [options] 'commands' files option - ...

  2. shell——awk

    awk -F"分隔符" "command" filename awk -F":" '{print $1}' /etc/passwd 字段引用 ...

  3. shell awk入门

    本文参考自 http://www.cnblogs.com/zhuyp1015/archive/2012/07/11/2586985.html awk:好用的数据处理工具 awk 也是一个非常棒的数据处 ...

  4. linux shell awk 流程控制语句(if,for,while,do)详细介绍

    在linux awk的 while.do-while和for语句中允许使用break,continue语句来控制流程走向,也允许使用exit这样的语句来退出.break中断当前正在执行的循环并跳到循环 ...

  5. 转 shell awk 使用详解

    awk简介 awk: 中文意思是报告生成器 能够根据我们输入的信息,将信息格式化以后显示,将定义好的信息以比较美观(直观)的方式显示出来出现比较早,继而出现了new awk(nawk)在windows ...

  6. [转]shell awk 入门,中级,高级使用

    awk很常用,对于我们在shell中分析log和file很有好处,很实用的东西,大家一起分享学习- 作为技术支持工程师,我们最最经常的工作就是要处理文本文件,不管是什么数据库最后都可以导成文本,我们就 ...

  7. [转]shell awk sed tr grep 语法汇总

    tr 基本语法 -c          # 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII  -d          # 删除字符串1中所有输入字符  -s          # 删除所 ...

  8. [SHELL]awk的用法举例

    从初学awk到现在小有所成,非常感谢CUers的帮助,总结了下自己曾经遇到的问题和犯的错误,供初学者借鉴,因本人非计算机专业,对专业词汇可能有表述不对的地方,还请指正和补充! 1. awk '{cod ...

  9. Linux shell awk数组使用

    awk中使用数组 一.数组格式 数组是一个包含一系列元素的表. 格式如下:     abc[1]="xiaohong"     abc[2]="xiaolan" ...

  10. Linux shell awk模式使用

    awk的PATTERN表示方法: 1,正则表达式,格式为/regex/ 以冒号为分隔符,显示/etc/passwd以r开头的行的第一段 [root@wei awk]# awk -F: '/^r/{pr ...

随机推荐

  1. 教你50招提升ASP.NET性能(二):移除不用的视图引擎

    (2)Remove unused View Engines 招数2: 移除不用的视图引擎 If you're an ASP.NET MVC developer, you might not know ...

  2. Codeforces Round #322 (Div. 2) C. Developing Skills 优先队列

    C. Developing Skills Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/581/p ...

  3. NYOJ109 数列转换 【守恒法】

    数列转换 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描写叙述 有一个数列a1,a2,a3...an,每次能够从中随意选三个相邻的数ai-1 ,ai , ai+1 ,进行例 ...

  4. 【转】如何在vmware中如何设置ip

    如何在vmware中如何设置ip 1.修改网络接口选hostonly2.虚拟机里安装vmware-tool,对鼠标和图形进行更好地支持.如果你在图形界面下,首先要切换到文本模式.右键点击桌面,打开一个 ...

  5. NodeJs + gm图片缩略图

    我的另一篇文章: Nginx/Apache图片缩略图技术 gm官网 1, 软件环境 nodejs npm GraphicsMagick or ImageMagick 貌似ImageMagick在处理大 ...

  6. error: /usr/include/objc/objc-class.h: No such file or directory

    When i use the example of ShareKit package,i have come across this error:"error: /usr/include/o ...

  7. python--判断数据类型可不可变

    内存是一块空间,可以比喻成一个比较大的房子,定义一个变量就是在大房子中建立一个小房子,判断一个数据类型可不可变,就是看在这个这个大房子中有没有新建小房子,可以通过id来判断,如果id没有变化则是不可变 ...

  8. 大陆居民身份证验证方法(java)

    1.设置接口 @Constraint(validatedBy = ChineseIdNumberValidator.class) @Target({ElementType.METHOD, Elemen ...

  9. svn管理代码在cornerstone上无法添加.a 静态库文件

    有时候.a静态库不能上传到svn的服务器  导致别人拉代码运行不了 这是因为cornerstone设置里面默认不会提交.a文件, 在上图选项栏里是cornerstone默认忽略上传的文件名后缀,在这里 ...

  10. Fortify对移动应用安全的支持

    Fortify对移动应用安全的支持http://www.docin.com/p-768827684.html