一、在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列
mkdir -p ~/Desktop/1/2/3/4/5/6/7/8/9/
二、在创建好的文件夹下面,比如我的是 /Users/jimmy/tmp/1/2/3/4/5/6/7/8/9 ,里面创建文本文件 me.txt
touch ~/Desktop/1/2/3/4/5/6/7/8/9/me.txt
三、在文本文件 me.txt 里面输入内容:
Go to: http://www.biotrainee.com/
I love bioinfomatics.
And you ?
vim ~/Desktop/1/2/3/4/5/6/7/8/9/me.txt
按下 i 键,进入插入模式,输入题目中的三行内容,按 ESC 键退出插入模式回到普通模式,再按下 :,进入命令行模式,输入wq,保存数据并退出vim。
前三题效果:
四、删除上面创建的文件夹 1/2/3/4/5/6/7/8/9 及文本文件 me.txt
rm -r ~/Desktop/1
五、在任意文件夹下面创建 folder1~5这5个文件夹,然后每个文件夹下面继续创建 folder1~5这5个文件夹,效果如下:
# mkdir -p ~/Desktop/{folder1,folder2,folder3,folder4,folder5}/{folder1,folder2,folder3,folder4,folder5}
mkdir -p ~/Desktop/folder{1..5}/folder{1..5}
六、在第五题创建的每一个文件夹下面都 创建第二题文本文件 me.txt ,内容也要一样。(这个题目难度超纲,建议一个月后再回过头来做)
# echo ~/Desktop/folder{1..5}/folder{1..5} | xargs -n 1
echo ~/Desktop/folder{1..5}/folder{1..5} | xargs -n 1 cp -v ~/Desktop/1/2/3/4/5/6/7/8/9/me.txt
七、再次删除掉前面几个步骤建立的文件夹及文件
rm -r ~/Desktop/folder{1..5}
八、下载 http://www.biotrainee.com/jmzeng/igv/test.bed 文件,后在里面选择含有 H3K4me3 的那一行是第几行,该文件总共有几行
wget -c http://www.biotrainee.com/jmzeng/igv/test.bed
grep -n H3K4me3 ~/test.bed
wc -l ~/test.bed
九、下载 http://www.biotrainee.com/jmzeng/rmDuplicate.zip 文件,并且解压,查看里面的文件夹结构
wget -c http://www.biotrainee.com/jmzeng/rmDuplicate.zip
unzip ~/rmDuplicate.zip
tree ~/rmDuplicate
文件结构:十、打开第九题解压的文件,进入 rmDuplicate/samtools/single 文件夹里面,查看后缀为 .sam 的文件,搞清楚 生物信息学里面的SAM/BAM 定义是什么
# vim ~/rmDuplicate/samtools/single/tmp.sam
less -SN ~/rmDuplicate/samtools/single/tmp.sam
SAM (Sequence Alignment/Map) 格式是一种通用的比对格式,用来存储reads到参考序列的比对信息。
十一、安装 samtools 软件
首先安装并配置好conda环境,再利用conda安装samtools
conda install -y samtools
samtools --help
十二、打开 后缀为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
find ~/rmDuplicate/ -name *.bam
samtools view -H ~/rmDuplicate/samtools/single/tmp.sorted.bam
用samtools 的 view命令查看bam文件,-H选项输出文件的头部注释,发现产生该文件的命令在最底部,如下:
十三、根据上面的命令,找到我使用的参考基因组 /home/jianmingzeng/reference/index/bowtie/hg38
具体有多少条染色体。
samtools view -H ~/rmDuplicate/samtools/single/tmp.sorted.bam | grep @SQ | awk '{print $2}' | grep -v '_' | wc -l
# samtools view -H ~/rmDuplicate/samtools/single/tmp.sorted.bam | grep @SQ | awk '{print $2}' | grep -v '_' | sed -n '$='
共有25条染色体。
十四、上面的后缀为BAM
的文件的第二列,只有 0 和 16 两个数字,用 cut/sort/uniq
等命令统计它们的个数。
samtools view ~/rmDuplicate/samtools/single/tmp.sorted.bam | awk '{print $2}' | sort -n | uniq -c
# samtools view ~/rmDuplicate/samtools/single/tmp.sorted.bam | cut -f 2 | sort -n | uniq -c
十五、重新打开 rmDuplicate/samtools/paired
文件夹下面的后缀为BAM
的文件,再次查看第二列,并且统计
samtools view ~/rmDuplicate/samtools/paired/tmp.sorted.bam | awk '{print $2}' | sort -n | uniq -c
十六、下载 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/single_tmp_fastqc.zip
文件,并且进入解压后的文件夹,找到 fastqc_data.txt
文件,并且搜索该文本文件以 >>
开头的有多少行?
cd ~/sickle-results
unzip ./single_tmp_fastqc.zip
tree
cd
less -SN ~/sickle-results/single_tmp_fastqc/fastqc_data.txt
cat ~/sickle-results/single_tmp_fastqc/fastqc_data.txt | sed -n '/^>>/p' | wc -l
# cat ~/sickle-results/single_tmp_fastqc/fastqc_data.txt | grep '^>>' | wc -l
# cat ~/sickle-results/single_tmp_fastqc/fastqc_data.txt | awk '/^>>/{print $0}' | wc -l
十八、下载 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
cat ~/hg38.tss | grep -n NM_000546
十九、解析hg38.tss
文件,统计每条染色体的基因个数。
cat ~/hg38.tss | awk '{print $2}' | grep -v '_' | sort -n | uniq -c
二十、解析hg38.tss
文件,统计NM
和NR
开头的熟练,了解NM
和NR
开头的含义。
cat ~/hg38.tss | awk '/^NM|^NR/{print $1}' | wc -l
cat ~/hg38.tss | awk '/^NM/{print $1}' | wc -l
cat ~/hg38.tss | awk '/^NR/{print $1}' | wc -l
# cat ~/hg38.tss | awk '{print $1}' | cut -c 1-2 | sort -n | uniq -c
NM_:mRNA mixed,转录组产物序列;成熟mRNA转录本序列
NR_:RNA mixed,非编码的转录子序列,包括结构RNAs,假基因转子等
参考:
http://www.bio-info-trainee.com/2900.html
http://www.bio-info-trainee.com/4030.html
https://zhuanlan.zhihu.com/p/25085567
https://man.linuxde.net/xargs
https://www.runoob.com/linux/linux-comm-xargs.html
https://www.jianshu.com/p/9c99e09630da
https://vip.biotrainee.com/d/48-ncbi-refseq