1.在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列。
mkdir -p 1/2/3/4/5/6/7/8/9
2.在创建好的文件夹下面,比如我是/Users/jimmy/tmp/1/2/3/4/5/6/7/8/9 ,里面创建文本文件 me.txt
touch ./1/2/3/4/5/6/7/8/9/me.txt
在文本文件 me.txt 里面输入内容:
Go to: http://www.biotrainee.com/
I love bioinfomatics.
And you ?
cd ./1/2/3/4/5/6/7/8/9
cat > me.txt
Go to: http://www.biotrainee.com/
I love bioinfomatics.
And you ?
^C
4.删除上面创建的文件夹 1/2/3/4/5/6/7/8/9 及文本文件 me.txt
rm -rf ./1
5.在任意文件夹下面创建 folder1~5这5个文件夹,然后每个文件夹下面继续创建 folder1~5这5个文件夹,效果如下:
for i in {1..5};do mkdir folder_$i&&cd folder_$i&&mkdir folder_{1..5}&&cd ;done
有个更加简洁的方法
mkdir -p folder_{1..5}/folder_{1..5}
6.在第五题创建的每一个文件夹下面都 创建第二题文本文件 me.txt ,内容也要一样。(这个题目难度超纲,建议一个月后再回过头来做)
for i in folder_{1..5}/folder_{1..5};
do echo "I love bioinfomatics.">me.txt;
done
7.再次删除掉前面几个步骤建立的文件夹及文件
cd
rm -rf folder*
8.下载 http://www.biotrainee.com/jmzeng/igv/test.bed 文件,后在里面选择含有 H3K4me3 的那一行是第几行,该文件总共有几行。
>grep -n 'H3K4me3' test.bed #-n显示行号,如下所示有 H3K4me3 的那一行是第8行
8:chr1 9810 10438 ID=SRX387603;Name=H3K4me3%20(@%20HMLE);Title=GSM1280527:%20HMLE%20Twist3D%20H3K4me3%20rep2%3B%20Homo%20sapiens%3B%20ChIP-Seq;Cell%20group=Breast;<br>source_name=HMLE_Twist3D_H3K4me3;cell%20type=human%20mammary%20epithelial%20cells;transfected%20with=Twist1;culture%20type=sphere;chip%20antibody=H3K4me3;chip%20antibody%20vendor=Millipore; 222 . 9810 10438 0,226,255
>wc -l test.bed #查看文件行数,该文件共10行
10 test.bed
9.下载 http://www.biotrainee.com/jmzeng/rmDuplicate.zip 文件,并且解压,查看里面的文件夹结构
(base) yanke14 15:58:22 ~
$ unzip rmDuplicate.zip
(base) yanke14 15:54:19 ~
$ tree rmDuplicate
rmDuplicate
├── picard
│ ├── paired
│ │ ├── readme.txt
│ │ ├── tmp.header
│ │ ├── tmp.MarkDuplicates.log
│ │ ├── tmp.metrics
│ │ ├── tmp.rmdup.bai
│ │ ├── tmp.rmdup.bam
│ │ ├── tmp.sam
│ │ └── tmp.sorted.bam
│ └── single
│ ├── readme.txt
│ ├── tmp.header
│ ├── tmp.MarkDuplicates.log
│ ├── tmp.metrics
│ ├── tmp.rmdup.bai
│ ├── tmp.rmdup.bam
│ ├── tmp.sam
│ └── tmp.sorted.bam
└── samtools
├── paired
│ ├── readme.txt
│ ├── tmp.header
│ ├── tmp.rmdup.bam
│ ├── tmp.rmdup.vcf.gz
│ ├── tmp.sam
│ ├── tmp.sorted.bam
│ └── tmp.sorted.vcf.gz
└── single
├── readme.txt
├── tmp.header
├── tmp.rmdup.bam
├── tmp.rmdup.vcf.gz
├── tmp.sam
├── tmp.sorted.bam
└── tmp.sorted.vcf.gz
6 directories, 30 files
10.打开第九题解压的文件,进入 rmDuplicate/samtools/single 文件夹里面,查看后缀为 .sam 的文件,搞清楚 生物信息学里面的SAM/BAM 定义是什么。
>cd rmDuplicate/samtools/single
>ls *.sam
tmp.sam
>less -S tmp.sam #.bam文件是二进制问件,查看要安装Samtools,使用samtools view查看
SRR1042600.42157053 0 chr1 629895 42 51M * 0 0 ATAACCAATACTACCAATCANTACTCATCATTAATAATCATAATGGCTA
SRR1042600.42212881 0 chr1 629895 42 51M * 0 0 ATAACCAATACTACCAATCANTACTCATCATTAATAATCATAATGGCTA
SRR1042600.12010763 16 chr1 629895 24 51M * 0 0 ATAACCAATACTTCTAATCAAAACTCATCATTAATAATCATAATGGCTA
bam是sam的二进制格式文件,可以节约存储空间
11.安装 samtools 软件
conda activate rna 激活conda环境特别重要
# miniconda官网下载linux版安装包:Miniconda2-4.7.10-Linux-x86_64.sh*
>./Miniconda2-4.7.10-Linux-x86_64.sh* #进入安装包所在目录,运行安装包
>conda config --add channels r
>conda config --add channels conda-forge
>conda config --add channels bioconda
>conda create -n rna python=2 #建立python2环境的名叫rna的虚拟conda环境
>conda activate rna #激活进入rna环境
>conda install -y bwa gatk4 sra-tools fastqc trim-galore star hisat2 bowtie2 subread htseq multiqc samtools salmon #安装软件
>source deactivate #退出环境
12.打开 后缀为BAM 的文件,找到产生该文件的命令。 提示一下命令是:
/home/jianmingzeng/biosoft/bowtie/bowtie2-2.2.9/bowtie2-align-s --wrapper basic-0 -p 20 -x /home/jianmingzeng/reference/index/bowtie/hg38 -S /home/jianmingzeng/data/public/allMouse/alignment/WT_rep2_Input.sam -U /tmp/41440.unp
samtools view tmp.sorted.bam | less -SN #查看bam文件
13.根据上面的命令,找到我使用的参考基因组 /home/jianmingzeng/reference/index/bowtie/hg38 具体有多少条染色体。
这个文件找不到了。。。
zcat gencode.v29.annotation.gtf.gz | grep -v '^#' | cut -f 1 | sort | uniq -c #用一个找到的gtf文件做类似的工作
250524 chr1
99843 chr10
167540 chr11
159530 chr12
42767 chr13
96124 chr14
100426 chr15
130878 chr16
171137 chr17
48848 chr18
168227 chr19
204338 chr2
61485 chr20
29652 chr21
59764 chr22
172809 chr3
108328 chr4
120515 chr5
124117 chr6
130671 chr7
98583 chr8
97204 chr9
143 chrM
89500 chrX
9064 chrY
zcat gencode.v29.annotation.gtf.gz | grep -v '^#' | cut -f 1 | sort | uniq -c | wc -l #查看上一个输出文件的行数就知道是多少条chr了
25
14.上面的后缀为BAM 的文件的第二列,只有 0 和 16 两个数字,用 cut/sort/uniq等命令统计它们的个数。
samtools view tmp.sorted.bam|cut -f2|sort|uniq -c
29 0
24 16
15.重新打开 rmDuplicate/samtools/paired 文件夹下面的后缀为BAM 的文件,再次查看第二列,并且统计
samtools view tmp.sorted.bam | cut -f 2 | sort | uniq -c
8 147
3 163
1 323
1 353
1 371
1 387
1 433
3 83
2 97
9 99
16.下载 http://www.biotrainee.com/jmzeng/sickle/sickle-results.zip 文件,并且解压,查看里面的文件夹结构, 这个文件有2.3M,注意留心下载时间及下载速度。
wget -c http://www.biotrainee.com/jmzeng/sickle/sickle-results.zip
unzip sickle-results.zip
tree sickle-results
>sickle-results
├── command.txt
├── single_tmp_fastqc.html
├── single_tmp_fastqc.zip
├── test1_fastqc.html
├── test1_fastqc.zip
├── test2_fastqc.html
├── test2_fastqc.zip
├── trimmed_output_file1_fastqc.html
├── trimmed_output_file1_fastqc.zip
├── trimmed_output_file2_fastqc.html
└── trimmed_output_file2_fastqc.zip
17.解压 sickle-results/single_tmp_fastqc.zip 文件,并且进入解压后的文件夹,找到 fastqc_data.txt 文件,并且搜索该文本文件以 >>开头的有多少行?
cd sickle-results/
unzip single_tmp_fastqc.zip
cd single_tmp_fastqc
cat fastqc_data.txt | grep '^>>' | wc -l
24
18.下载 http://www.biotrainee.com/jmzeng/tmp/hg38.tss文件,去NCBI找到TP53/BRCA1等自己感兴趣的基因对应的 refseq数据库 ID,然后找到它们的hg38.tss文件的哪一行。
https://www.ncbi.nlm.nih.gov/gene/7157
wget -c http://www.biotrainee.com/jmzeng/tmp/hg38.tss
less hg38.tss|grep 'NM_000546'
NM_000546 chr17 7685550 7689550 1
19.解析hg38.tss 文件,统计每条染色体的基因个数。
cut -f 2 hg38.tss | sort | uniq -c
20.解析hg38.tss 文件,统计NM和NR开头的熟练,了解NM和NR开头的含义。
grep -E '^NM' hg38.tss | wc -l
51064
grep -E '^NR' hg38.tss | wc -l
15954