sed 替换_生物信息之独孤九剑——sed

编者按:

  在金庸武学体系的众多武功之中,独孤九剑并不是最强劲的武功,它与其他武林绝学有很大的不同,可以说是鹤立鸡群。比如乔峰的降龙十八掌,段誉的六脉神剑,张无忌的九阳神功,石破天的罗汉伏魔神功,这些神功都需要强大的内力支撑,而独孤九剑则不同,不需要内力,这点其实可以从华山派气宗与剑宗的分歧就可以看出来。独孤九剑传人风清扬属于剑宗,更注重招式,而不是像剑宗注重练气。独孤九剑分为总诀式,破剑式,破刀式,破枪式,破鞭式,破索式,破箭式,破掌式,破气式,遇到不同的场景使用关不同的招式,因此,独孤九剑更加注重问题的解决,本质上就是就是通过工具来解决问题。只要学会这九剑,就可以处理很多的问题。学习生物信息也是同样的道理,当然练好内功,掌握很好的基础是非常必要的,但是也可以学习一些小工具,解决一些实际问题。那么从这次内容开始,我们就来给大家介绍生物信息之独孤九剑。

a6ff2d83f449d25bb4a070f8675cc47a.png

sed是linux下强大的文本编辑工具,sed全称是Stream EDitor,是一种流编辑器,什么是流编辑器呢。也就是相当于一个格式化的工具。当数据流过这个工具时,都被格式化成固定的格式。比如一个流水线中的一个模具,原材料是各种形状的,但是结果模具处理之后都变成同一的形状,这就是流编辑器。sed默认一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。原文件内容并没有改变。sed主要用来自动编辑一个或多个文件,简化对文件的反复操作。而不需要编写转换程序来完成。

案例一:输出固定的行

sed -n '1307p' seq.fna #输出文件第1307行;

297d22ae4d767bdbdf0f13c648edf4dd.png

sed -n '100,200' seq.fna #输出文件第100到200行;

案例二:替换操作

sed -e 's/gi/GI/' seq.fna #将文件中gi全部替换为大写GI;

sed -i 's/gi/GI/g' seq.fna #在原文件上进行替换,并且进行全部替换;

sed -i.bak 's#GI#gi#' seq.fna #在原文件上进行替换,并进行备份;

sed -e 's/gi/GI/2;s/ref/REF/2' seq.fna #只将第二次出现的gi和ref进行替换;

sed -f sed.list cds.list #根据文件中的模式进行替换,可同时进行多条件替换;

sed -n 's/gi/GI/p' seq.fna #打印发生替换的行;

案例三:删除空白行;

sed -e '/^s*$/d' seq.fna #删除文件中的空白行;

案例四:行寻址

sed -n '/ref/p' seq.fna #输出文件中包含ref关键字的行;

297d22ae4d767bdbdf0f13c648edf4dd.png

fa27de560c18acfb999ae0a41009d199.png

sed '100,2000s/GI/gi/g' seq.fa #则只替换100行到2000行的内容;

sed '100,2000!s/GI/gi/g' seq.fa #加感叹号取反,在这个范围之外的执行操作;

案例五:删除操作

sed -e '/>/d' seq.fna #删除包含ref的行;

sed -e 's/:.*//g' seq.fna #删除冒号之后的所有内容;

案例六:对应替换,类似于tr的功能

sed -e 'y/ATCG/atcg/' seq.fna #修改大小写

053b47191a09f8896edde7c0161c58b6.png

sed -e '/>/!y/ATCG/atcg/' seq.fna #DNA序列反向互补配对,并修改大小写

fa27de560c18acfb999ae0a41009d199.png

c700e92df54c3dd4f9c786c5e357cd64.png

欢迎订阅微信公众号:基因学苑

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值