前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux下的文本排序让我很意外

Linux下的文本排序让我很意外

作者头像
生信技能树
发布2023-02-28 12:21:37
9030
发布2023-02-28 12:21:37
举报
文章被收录于专栏:生信技能树生信技能树

我分享给大家的ngs流程里面经常是需要制作配置文件,里面的每个样品名字都有两个测序文件,因为目前都是双端测序,制作配置文件的过程其实就是Linux下的文本处理,代码如下所示:

代码语言:javascript
复制
echo A_{1..25}_2.fq.gz |sed 's/\s/\n/g'|sort  >2
echo A_{1..25}_1.fq.gz |sed 's/\s/\n/g'|sort >1
paste 1 2 

这里就是{1..25}语法,是shell的扩展,shell扩展有以下几种,并按以下顺序处理,当然如果没找到匹配的扩展格式,那就不处理:

  • brace expansion 大括号({})扩展
  • tilde expansion ~字符扩展
  • parameter and variable expansion 参数和变量扩展
  • arithmetic expansion 算术扩展
  • command substitution 命令替换
  • process substitution 过程替换
  • word splitting
  • Filename Expansion 通配符扩展

以上扩展中,只有brace expansion,word splitting,filename expansion 三种扩展可以改变token个数,我们演示的{1..25}语法就是这个大括号扩展(brace expansion)的序列输出功能,其中两个点是进行序列输出,然后外面套的大括号是进行扩展。这个文本处理的结果如下所示:

代码语言:javascript
复制
A_10_1.fq.gz    A_10_2.fq.gz
A_11_1.fq.gz    A_11_2.fq.gz
A_1_1.fq.gz     A_12_2.fq.gz
A_12_1.fq.gz    A_1_2.fq.gz
A_13_1.fq.gz    A_13_2.fq.gz
A_14_1.fq.gz    A_14_2.fq.gz
A_15_1.fq.gz    A_15_2.fq.gz
A_16_1.fq.gz    A_16_2.fq.gz
A_17_1.fq.gz    A_17_2.fq.gz
A_18_1.fq.gz    A_18_2.fq.gz
A_19_1.fq.gz    A_19_2.fq.gz
A_20_1.fq.gz    A_20_2.fq.gz
A_21_1.fq.gz    A_21_2.fq.gz
A_2_1.fq.gz     A_22_2.fq.gz
A_22_1.fq.gz    A_2_2.fq.gz
A_23_1.fq.gz    A_23_2.fq.gz
A_24_1.fq.gz    A_24_2.fq.gz
A_25_1.fq.gz    A_25_2.fq.gz
A_3_1.fq.gz     A_3_2.fq.gz
A_4_1.fq.gz     A_4_2.fq.gz
A_5_1.fq.gz     A_5_2.fq.gz
A_6_1.fq.gz     A_6_2.fq.gz
A_7_1.fq.gz     A_7_2.fq.gz
A_8_1.fq.gz     A_8_2.fq.gz
A_9_1.fq.gz     A_9_2.fq.gz

眼尖的小伙伴应该是已经看到了问题所在:

代码语言:javascript
复制
A_1_1.fq.gz     A_12_2.fq.gz
A_12_1.fq.gz    A_1_2.fq.gz

A_2_1.fq.gz     A_22_2.fq.gz
A_22_1.fq.gz    A_2_2.fq.gz

出现了少量样品的排序混乱情况。

确实让人有点费解啊!

引用:

书籍+视频+习题配套练习

视频都在B站,大家把R语言和linux一起学习,数十万人观看的教学视频,你值得拥有:

书籍我推荐两本:

作业的话,力推我设计的5套习题,加油,在生物信息学的路上等大家!

  • 最低要求是完成我的 linux 20题 http://www.bio-info-trainee.com/2900.html
  • 其次完成生物信息学数据格式的习题(blast/blat/fa-fq/sam-bam/vcf/bed/gtf-gff),收集这些格式的说明书。
  • fasta和fastq格式文件的shell小练习 http://www.bio-info-trainee.com/3575.html
  • sam和bam格式文件的shell小练习 http://www.bio-info-trainee.com/3578.html
  • VCF格式文件的shell小练习 http://www.bio-info-trainee.com/3577.html
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-01-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引用:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档