【发布时间】:2016-01-14 15:45:58
【问题描述】:
我有几个文件格式如下:
chr10 Cufflinks transcript 92828 95504 1 - . gene_id "CUFF.1"; transcript_id "ENST00000447903"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000"; full_read_support "no";
chr10 Cufflinks exon 92828 94054 1 - . gene_id "CUFF.1"; transcript_id "ENST00000447903"; exon_number "1"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000";
chr10 Cufflinks exon 94555 94665 1 - . gene_id "CUFF.1"; transcript_id "ENST00000447903"; exon_number "2"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000";
chr10 Cufflinks exon 94744 94852 1 - . gene_id "CUFF.1"; transcript_id "ENST00000447903"; exon_number "3"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000";
chr10 Cufflinks exon 95348 95504 1 - . gene_id "CUFF.1"; transcript_id "ENST00000447903"; exon_number "4"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000";
我想要实现的是在输入文件中将文件名附加到字符 CUFF* 上。我的文件的名称是 sample_1,所以输出应该如下所示:
chr10 Cufflinks transcript 92828 95504 1 - . gene_id "CUFF.1_sample_1"; transcript_id "ENST00000447903"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000"; full_read_support "no";
chr10 Cufflinks exon 92828 94054 1 - . gene_id "CUFF.1_sample_1"; transcript_id "ENST00000447903"; exon_number "1"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000";
chr10 Cufflinks exon 94555 94665 1 - . gene_id "CUFF.1_sample_1"; transcript_id "ENST00000447903"; exon_number "2"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000";
chr10 Cufflinks exon 94744 94852 1 - . gene_id "CUFF.1_sample_1"; transcript_id "ENST00000447903"; exon_number "3"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000";
chr10 Cufflinks exon 95348 95504 1 - . gene_id "CUFF.1_sample_1"; transcript_id "ENST00000447903"; exon_number "4"; FPKM "0.0000000000"; frac "0.000000"; conf_lo "0.000000"; conf_hi "0.000000"; cov "0.000000";
这是我迄今为止尝试过的:
cat sample_1 | sed 's/CUFF*/CUFF*_sample1/g'
任何 Unix 单行代码都会很棒...
【问题讨论】:
-
我看不出区别——在未滚动的数据中不可见,在滚动的数据中也不明显(实际上
oId "CUFF.14.1";需要变成oId "CUFF.14.1_sample1";)。请重做这个问题,删掉更多的列,并清楚地解释输入和输出之间的区别,以及额外信息的来源。样本数据文件是否名为sample1?如果它被称为sample1.txt或有后缀怎么办?如果它有一个路径/path/to/sample1呢? 你尝试过什么(问题出在哪里)? -
大家好,我已经编辑了我的问题..感谢 cmets....