3_0_4 要理解并会用的几个脚本

2019-06-04 11:42:03 浏览数 (1)

这个介于3和4之间,目的是练习几个有用的脚本,学几个命令。

随便找几个文件进行练习,只是为了说明问题,这些其实是RNA-seq数据,但无所谓,只是看脚本的处理

有以下几个文件

假如现在觉得文件太大,想快速走下流程,那么可以提取文件中的前比如说1w行进行比对。align下建try_small文件夹,进到里面

所以

代码语言:javascript复制
$ find /mnt/d/RNA-seq/RNAseqdata/try/*.fastq > fq.txt
代码语言:javascript复制
:~/project/wes/align$ cat fq.txt
/mnt/d/RNA-seq/RNAseqdata/try/RNAseq_F-shEZH2_rep2.fastq
/mnt/d/RNA-seq/RNAseqdata/try/RNAseq_F-shEZH2_rep3.fastq
/mnt/d/RNA-seq/RNAseqdata/try/RNAseq_F-shNT_rep1.fastq
/mnt/d/RNA-seq/RNAseqdata/try/RNAseq_F-shNT_rep2.fastq
/mnt/d/RNA-seq/RNAseqdata/try/RNAseq_F-shNT_rep3.fastq
/mnt/d/RNA-seq/RNAseqdata/try/RNAseq_F-shSUZ12_rep1.fastq
/mnt/d/RNA-seq/RNAseqdata/try/RNAseq_F-shSUZ12_rep2.fastq
/mnt/d/RNA-seq/RNAseqdata/try/RNAseq_F-shSUZ12_rep3.fastq

假如说现在想取文件的前10000列,输入到一个新的文件,目的是快速运行

基本结构如下

代码语言:javascript复制
$ cat fq.txt|while read id ;do echo $id;done

扩展

代码语言:javascript复制
$ cat fq.txt|while read id ;do (basename $id);done
代码语言:javascript复制
RNAseq_F-shEZH2_rep2.fastq
RNAseq_F-shEZH2_rep3.fastq
RNAseq_F-shNT_rep1.fastq
RNAseq_F-shNT_rep2.fastq
RNAseq_F-shNT_rep3.fastq
RNAseq_F-shSUZ12_rep1.fastq
RNAseq_F-shSUZ12_rep2.fastq
RNAseq_F-shSUZ12_rep3.fastq

注意

  • basename的用法见Linux_basename命令详解
  • basename命令用(),代表运行其里面的命令
代码语言:javascript复制
 cat fq.txt|while read id ;do (zcat $id|head -10000 > $(basename $id) $id;
done
代码语言:javascript复制
align/try_small$ ls -lh
total 4.9M
-rw-rw-rw- 1 kelly kelly  453 May 30 22:27 fq.txt
-rw-rw-rw- 1 kelly kelly 567K May 30 22:29 RNAseq_F-shEZH2_rep2.fastq
-rw-rw-rw- 1 kelly kelly 567K May 30 22:29 RNAseq_F-shEZH2_rep3.fastq
-rw-rw-rw- 1 kelly kelly 582K May 30 22:29 RNAseq_F-shNT_rep1.fastq
-rw-rw-rw- 1 kelly kelly 567K May 30 22:29 RNAseq_F-shNT_rep2.fastq
-rw-rw-rw- 1 kelly kelly 567K May 30 22:29 RNAseq_F-shNT_rep3.fastq
-rw-rw-rw- 1 kelly kelly 582K May 30 22:29 RNAseq_F-shSUZ12_rep1.fastq
-rw-rw-rw- 1 kelly kelly 567K May 30 22:29 RNAseq_F-shSUZ12_rep2.fastq
-rw-rw-rw- 1 kelly kelly 567K May 30 22:29 RNAseq_F-shSUZ12_rep3.fastq

可见文件小多了,这样可以快速进行。

如果不想试探性运行,上面这一步可以不做。可以从下面开始。

0 人点赞