美文网首页
awk 引用外部变量,以及 END 的一个用法

awk 引用外部变量,以及 END 的一个用法

作者: 风知秋 | 来源:发表于2023-09-20 16:19 被阅读0次

指定窗口长度内变异位点的数目统计(带步长)

之前的介绍中提到 awk 可以通过 -v 选项引用外部变量,这里实践一下:

read sum3 sum4 < sum    # 读取文件名为 sum 的文件,并指定变量 sum3 和 sum4

cat count | while read num last    #   读取文件名为 count 的文件,并指定变量 num 和 last

do

    echo "Processing line: $num $last"       # 每一行处理完之前屏幕输出一句话,表明在正常运行

    awk -v t=$last -v sum3=$sum3 -v sum4=$sum4   -F ','    '$23==t {s3 += $3; s4 += $4} END {print s3/sum3 "\t" s4/sum4 "\t" t}'   test.csv >> result.txt 

done

脚本内容不多解释,比较简单,这里说一下这两句话的区别;

'$23==t {s3 += $3; s4 += $4} END {print s3/sum3 "\t" s4/sum4 "\t" t}' 

'$23==t {s3 += $3; s4 += $4; print s3/sum3 "\t" s4/sum4 "\t" t}' 

前者是对文件整体第三列和第四列求和,最后输出;

后者是每一行如此进行,随即输出,第一行就是第一行的第三列除以总和,第二行就是文件前两行求和然后除以总和,一行计算完随即输出一行,然后再计算第二行,输出第二行。

相关文章

  • Ubuntu awk使用笔记

    awk引用外部变量 awk有一个-v选项,可以将外部变量引入到awk语句中,具体的使用方法如下: 即通过-v选项一...

  • awk巩固扩展

    awk 中使用外部shell变量 选项-v可以实现使用外部变量。 如:A=44echo "ABCD" | awk ...

  • awk gsub使用

    参考文章 awk当中使用外部变量 gsub当中使用外部变量 1.awk命令使用双引号的情况下 此时在awk命令里面...

  • awk之一基本操作

    awk格式 awk [options] BEGIN 'scripts' END file 变量定义 注意:1.\t...

  • Linux awk 命令详解(一)

    目录 一、awk简介及常见用法二、awk的过滤的机制BEGIN{ }END{ }指令三、awk数值/字符串比较/逻...

  • 18-文本处理三剑客之awk

    本章内容 ◆ awk介绍◆ awk基本用法◆ awk变量◆ awk格式化◆ awk操作符◆ awk条件判断◆ aw...

  • awk命令详解

    语法格式 内置变量 外部变量传给awk 打开外部文件 调用外部应用程序 其他示例

  • 2017 09-04 AWK

    本章主要学习内容awk介绍 awk基本用法 awk变量 awk格式化 awk操作符 awk条件判断 a...

  • awk

    awk:报告生成器,格式化文本输出 内容: awk介绍 awk基本用法 awk变量 awk格式化 awk操作符 a...

  • AWK使用方法

    awk 用法:awk ' pattern {action} ' 变量名 含义 ARGC 命令行变元个数 ARGV ...

网友评论

      本文标题:awk 引用外部变量,以及 END 的一个用法

      本文链接:https://www.haomeiwen.com/subject/uecovdtx.html