搜索
查看: 177|回复: 4

linux两个文件内容的匹配,并替换

[复制链接]

2

主题

3

帖子

61

积分

注册会员

Rank: 2

积分
61
发表于 2018-11-24 14:02:00 | 显示全部楼层 |阅读模式
本帖最后由 a601617165 于 2018-11-24 14:04 编辑

我有file1文件,内容是这样
file2文件,内容是这样
我想把file1的第一列与file2的">"后的内容先匹配好,匹配完成之后再用file1中对应的第二列替换掉file2中">"的内容,该怎么写脚本?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x



上一篇:<R for Data Science> 读书笔记8 | 第十二章: Tidy data
下一篇:R for Data Science-014 比较运算符 逻辑运算符 缺失值
回复

使用道具 举报

0

主题

5

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2018-11-26 14:23:26 | 显示全部楼层
我的思路是:1. 先把fasta文件转成\tab文件,也就是两列,第一列是id,第二列是序列。2. 然后在根据id列匹配,增加第三列(即file1),这样就有三列。然后选目的列(2,3)保存为新的fasta就行了。
回复 支持 1 反对 0

使用道具 举报

0

主题

1

帖子

55

积分

注册会员

Rank: 2

积分
55
发表于 2018-11-28 16:23:13 | 显示全部楼层
仅供参考哈:
awk 提取file1的所需两列 >> file2转换为tab键分隔的文件 >> R里面的merge函数 >> subset提取所需列
回复 支持 反对

使用道具 举报

0

主题

7

帖子

81

积分

注册会员

Rank: 2

积分
81
发表于 2018-11-29 18:06:04 | 显示全部楼层
把file2的>开头的行尾的回车符替换成tab,这个文件就每两行变成一行了,然后用awk或者perl很容易就匹配好了,再次输出的时候把最后一列单独另起一行写,就又变回fasta格式了。
回复 支持 反对

使用道具 举报

2

主题

3

帖子

61

积分

注册会员

Rank: 2

积分
61
 楼主| 发表于 2018-11-30 16:19:09 | 显示全部楼层
好的,谢谢各位
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树    

GMT+8, 2018-12-12 05:26 , Processed in 0.076975 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.