读取行时,awk $line

2023-12-15

我有一个包含数字列表的文件。我有第二个文件,每个文件包含各种条目和多个字段。

我想要做的是获取第 12 个字段等于第一个数字的所有行,并将它们放入一个新文件中,然后放入第二个数字,依此类推。

我写了一句很有道理的俏皮话,但我不明白为什么它行不通。

这是数字列表:

cat truncations_list.txt

3
318
407
412
7

包含要排序的条目的文件是:

M00970:45:000000000-A42FD:1:1101:14736:1399 TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCATCGGCNGGAGTAACTATGACTCTNTTAAGGAGGACCAATATGAACCANACNNNNNNNNNACTNTATCTAGGGTTCCCTGCACAGTATGTGNCC    79  TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCATCGGCNGGAGTAACTATGACTCTNTTAA 65  GGAGGACCAATATGAACCANACNNNNNNNNNACTNTATCTAGGGTTCCCTGCACAGTATGTGNCC   79S65M  1   81  TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCATCGGCNGGAGTAACTATGACTCTNTTAAGG   -2  318
M00970:45:000000000-A42FD:1:1101:15371:1399 TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCAACGGCNGGAGTAACTATGACTCTNTTAAGGAGTCGGTGTTCACATGCNATNNNNNNNNNCAGNCGAACTTGATGAAGAACGTCGACGTGTNGG    83  TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCAACGGCNGGAGTAACTATGACTCTNTTAAGGAG 61  TCGGTGTTCACATGCNATNNNNNNNNNCAGNCGAACTTGATGAAGAACGTCGACGTGTNGG   83S61M  1   81  TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCAACGGCNGGAGTAACTATGACTCTNTTAAGG   2   407

这是我的命令:

file="truncations_list.txt"
while read line; do awk '$12==$line' R2_Output.txt >reads_$line.txt ; done <"$file"

该命令将创建所有文件“reads_412.txt”等,但所有文件都是空的。

我感谢您的帮助!


您的主要问题是 awk 程序使用单引号,因此“$line”变量永远不会扩展。快速解决方法是

awk -v num=$line '$12==num' R2_Output.txt

但是,不要这样做。您将为数字文件中的每一行读取一次输出文件。您可以通过仅读取每个文件一次来使其工作:

awk '
    # read the list of numbers in truncations_list
    FNR == NR {
        num[$1]
        next
    }

    # process each line of the output file
    # any lines with an "unknown" $12 will be ignored
    $12 in num {
        f = "reads_" $12 ".txt"
        print >> f
    }
' truncations_list.txt R2_Output.txt
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

读取行时,awk $line 的相关文章

  • 将选择结果(一列)拆分为多列

    我一直在努力找出如何实现这一目标 但我认为我一开始就没有能力知道要寻找什么 我正在使用现有系统 我无法更改数据库架构 也无法规定用户如何输入数据 我必须利用我们现有的资源来工作 目前 我们的用户正在将统计数据放入表中的一个文本字段中 他们使
  • 如何获取视频时长(以秒为单位)? [复制]

    这个问题在这里已经有答案了 如何获取以秒为单位的视频时长 我尝试过的 ffmpeg i file flv 2 gt 1 grep Duration Duration 00 39 43 08 start 0 040000 bitrate 38
  • 遍历/循环 XSL 键:如何?

    有没有办法遍历一个键并输出它包含的所有值
  • Bash:将字符串添加到文件末尾而不换行

    如何将字符串添加到文件末尾而不换行 例如 如果我使用 gt gt 它将添加到文件末尾并换行 cat list txt yourText1 root host 37 echo yourText2 gt gt list txt root hos
  • R 中带有文件名的 For 循环

    我有一个文件列表 例如 nE pT sbj01 e2 2 csv nE pT sbj02 e2 2 csv nE pT sbj04 e2 2 csv nE pT sbj05 e2 2 csv nE pT sbj09 e2 2 csv nE
  • 空 while 循环有什么影响?

    我知道这可能是一个有点 愚蠢 的问题 但有时 我只想循环直到条件为假 但我不喜欢让循环保持为空 所以代替 Visible true while IsRunning Visible false 我通常prefer while IsRunnin
  • 安装python启动文件

    我如何安装pythonstartup文件 以便它在命令上运行 例如python myfile py 我尝试将其安装到我的 home myuserUbuntu的目录 但它说我没有足够的权限 此外 不同的地方交替说它应该全部大写或全部小写 前面
  • 执行命令而不将其保留在历史记录中[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 在进行软件开发时 经常需要在命令行命令中包含机密信息 典型示例是将项目部署到服务器的凭据设置为环境变量 当我不想将某些命令存储在命令历史记
  • 通过数据框与函数进行交互

    如果我有这样的日期框架 氮 EG 00 04 NEG 04 08 NEG 08 12 NEG 12 16 NEG 16 20 NEG 20 24 datum von 2017 10 12 21 69 15 36 0 87 1 42 0 76
  • 如何理解play2中的“Iteratee”?

    有一个包play api libs iteratee在play2中 有一个大物体Iteratee其中有超过1000行 为什么play2需要这么大的对象以及如何理解它 我刚刚写了一篇文章 试图向那些尝试发现 Play2 提供的 Iterate
  • flex 3 迭代对象值

    我有一个代表数据库表的对象 我想迭代这个对象并打印每个值 我可以用什么来做到这一点 我想在我的mxml而不是actionscript中执行此操作 对于每个对象属性我想创建一个输入字段 查找有关 Flex 3 循环的文档 如果你这样做 你会发
  • 在 Bash 中替换垂直线

    我很难完成我的脚本 因为这一部分没有按照我想要的方式运行 我的脚本中有这一行 cat home tmp temp1 txt awk gsub RS gsub RS print gt home tmp temp txt 效果很好 是的 但是当
  • Windows 10 上的 LibPNG 构建问题

    我试图在 Windows 10 上构建 libpng 以获取 win32 二进制文件 但我认为有一个与 awk 解析带有 CRLF 行结尾的文件相关的问题 我尝试使用 dos2unix 命令转换文件 但没有成功 结果相同 在 make 命令
  • 如何在 *nix 中登录时运行脚本?

    我知道我曾经知道如何做到这一点 但是 如何在 unix 中登录时运行脚本 bash 可以 From 维基百科 Bash http en wikipedia org wiki Bash 28Unix shell 29 当 Bash 启动时 它
  • 在 macOS 上使用 find 时出现“非法选项”错误

    我试图列出末尾仅带有字母 R 的文件 我用了find在 macOS 终端中如下所示 find type f name R 但我收到消息说illegal option t 第一个参数find是它应该开始寻找的路径 路径 表示当前目录 find
  • Java“tail -f”包装器

    我需要将 Unix 命令 tail f 包装在 BufferedInputStream 中 我不想模拟或模仿尾巴 如所述这个问题 https stackoverflow com questions 557844 java io implem
  • 如何检查目录是否有读/写权限

    我有一个如图所示的目录 d wx x x 2 bcheudev bcheudev 4096 Jun 18 06 16 test 这表明该目录没有读取权限 但是当我通过 shell 脚本检查相同内容时 它给出的结果是 dir test 具有读
  • 合并两个非常大的文件,忽略第一句

    我想将两个巨大的文件 每个几百兆字节 合并成一个文件 同时忽略第一行 我想使用 awk 因为我认为它应该是最优化的方式 我这样做的方式只忽略第二个文件的第一行 知道如何做工作或者是否有更快的方法 awk FNR NR FNR 1 next
  • WhatsApp 如何实现每台服务器 200 万个连接?

    在 Ubuntu 上 可以打开的最大套接字数似乎受以下控制 cat proc sys net ipv4 tcp max orphans 262144 根据 Rick Reed 来自 WhatsApp 的一次演示 这些人使用 FreeBSD
  • Python,将迭代函数变成递归函数

    我创建了一个输出 4 3 2 1 0 1 2 3 4 的迭代函数 def bounce2 n s n for i in range n print n n n 1 if n lt 0 for i in range s 1 print n n

随机推荐

  • ASP.net 和 JQuery UI 日期选择器

    Given
  • 使用存储过程从 SQL Server 导出图像

    我使用 Microsoft Sql server 2012 作为 DBMS 我的数据库包含有关足球运动员 每个球员都有一张照片 我需要将球员照片导出到我的计算机上 我想可以通过 TSQL 来完成 这样我就可以避免编程或编辑我的应用程序来仅导
  • 在 Selenium 的 FirefoxOptions 中设置 BrowserExecutableLocation 并不能防止出现“无法找到匹配的功能集”错误

    我对 Selenium 还很陌生 并且正在尝试创建一些最低限度通过的测试用例 我想您可以将它们称为某种意义上的 hello world 程序 我尝试创建一个 Firefox 驱动程序的实例 如下所示 var options new Fire
  • 将图像裁剪为圆形并添加边框

    我正在尝试裁剪圆形图像并在其周围添加边框 下面是我裁剪圆形图像的代码
  • OpenMPI:简单的 2 节点设置

    我在仅使用两个节点运行 OpenMPI 程序时遇到问题 其中一个节点与正在执行的机器是同一台机器 mpiexec命令和另一个节点是一台单独的机器 我将调用正在运行 mpiexec 的机器 master 以及另一个节点slave On bot
  • 使用 data.table [R] 查找组中众数出现的次数

    我一直在使用这里的优秀答案查找具有数据表的组的众数 但是 我还想查找每组变量 y 的 x 模态值出现的次数 我怎样才能做到这一点 编辑 有一种比上面链接的答案更快的方法来查找模式 我找不到从中得到的答案 如果有 请编辑并链接 但它使用此功能
  • React-router重定向到index.html并从.htaccess中的url中删除www

    我正在 ReactJS 中构建一个小型应用程序 因此所有页面都需要提供index html 并且 JS 处理 url 这很好用 但我还想让 htaccess 从网址中删除 www 如果存在 我正在阅读 mod rewrite 文档 但我不太
  • 如何在 Windows 7 中将 URL 参数从 Java 传递到本地 HTML 文件?

    我迫切需要您的专业知识来解决 Windows 7 问题 设想 我有一个基于框架的帮助包 它是为上下文相关的帮助调用而设置的 Java 应用程序能够通过将表示所需 HTML 的名为 anchor 的标记传递到名为 pophelp 的 HTML
  • 从输入文件读取实际值时出现浮点异常

    我尝试从输入文件中读取浮点值Fortran 为此 我使用以下代码 INTEGER nf REAL re OPEN newunit nf file toto txt READ unit nf fmt re 与 toto txt 包含我的真实值
  • Octave / MATLAB 中的 deal() 函数有什么意义?

    一些参考代码使用了该函数deal 简单地说 就像 a b c deal 1 2 3 如文档中所述 对于八度 and 对于MATLAB 该函数只是将输入复制到输出 Why use deal 在这种情况下 甚至在一般情况下 我正在尝试学习 更正
  • Django:从模板内访问会话变量?

    如果我在 Django 中设置一个会话变量 例如 request session name name 有没有办法可以从模板中访问它 或者我是否必须从视图中检索它 然后将其传递给模板 之所以这么问 是因为我想在模板中访问大约 10 个小会话变
  • 在 Angular 5 中迭代复杂的 JSON 结构

    如何在 Angular 5 中迭代 JSON 已经搜索了很多 得到了一个管道概念 但它不适用于复杂的 json 如下所示 我需要使用以下类型的数据创建可扩展表 我一直在阅读这个 json data Items Key 9009 type f
  • 如何使用 javascript 阻止因空字段而提交表单?

    如何在 javascript 中编写脚本来输出错误并防止表单中存在空字段时提交表单 假设表单名称为 form 输入名称为 name 我在 PHP 中遇到了一些麻烦 并不总是正确处理空字段 所以我想将其作为备份 如有任何帮助 我们将不胜感激
  • Sparklyr 更改所有列名称 Spark DataFrame

    我打算更改所有列名称 目前的重命名或选择操作太费力了 不知道有没有人有更好的解决方案 示例如下 df lt data frame oldname1 LETTERS oldname2 1 oldname200 APPLE df tbl lt
  • F5浏览器刷新和回发有区别吗?(asp.NET)

    我正在 asp NET 中现有数据网格的不同行中动态创建拖网格 我生成的数据网格有一列是 TemplateColumn 复选框列 在我的父数据网格中 我有一个带有复选框的模板列 当我选中或取消选中复选框的值时 会调用 check chang
  • Flutter:如何使用变量将参数传递给 Widget?

    这是一些伪代码 显示了我想要实现的目标 Text txt text subtitle false final params subtitle textAlign TextAlign center style TextStyle color
  • 如何检查 css box-shadow 是否受支持(jQuery)?

    我正在创建一个完整的 css 布局 但是 某些浏览器 例如IE6 不支持box shadow 和 webkit box shadow或 moz box shadow 我想检查一下是否不支持 然后添加其他样式 这在 jQuery 中怎么可能呢
  • 在 Heroku 上结合使用 Resque、Puma 和 Scheduler

    在查看了大量指南后 我想确认我的设置 现在我的procfile好像 web bundle exec puma C config puma rb config ru resque TERM CHILD 1 RESQUE TERM TIMEOU
  • 如何恢复用 jQuery 删除的元素?

    如果使用删除元素 notification remove 我们如何将其创建回来 你无法得到那个特定的例子后退 使用 remove 将其从 DOM 中删除 不过 您可以创建它的克隆 在 DOM 中移动它 隐藏它等等 根据您的项目需求 您可能还
  • 读取行时,awk $line

    我有一个包含数字列表的文件 我有第二个文件 每个文件包含各种条目和多个字段 我想要做的是获取第 12 个字段等于第一个数字的所有行 并将它们放入一个新文件中 然后放入第二个数字 依此类推 我写了一句很有道理的俏皮话 但我不明白为什么它行不通