作业原文:生信人的linux考试 | 生信菜鸟团
本次使用的Linux系统为Win10的Ubuntu子系统
Q1:
在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列
mkdir -p 1/2/3/4/5/6/7/8/9
Q2:
在创建好的文件夹下面,比如我的是 /Users/jimmy/tmp/1/2/3/4/5/6/7/8/9 ,里面创建文本文件 me.txt
cd 1/2/3/4/5/6/7/8/9
touch me.txt
Q3:
在文本文件 me.txt 里面输入内容
Go to: http://www.biotrainee.com/
I love bioinfomatics.
And you ?
vi me.txt
cat me.txt
3
Q4:
删除上面创建的文件夹 1/2/3/4/5/6/7/8/9 及文本文件 me.txt
cd
ls
rm -r ./1
ls
Q5:
在任意文件夹下面创建 folder1~5这5个文件夹,然后每个文件夹下面继续创建 folder1~5这5个文件夹
- 法1
list="1 2 3 4 5"
echo $list
for i in $list; do for j in $list; do mkdir -p folder_${i}/folder_${j};done;done
#sudo apt-get install tree
tree
5
- 法2
mkdir -p folder_{1..5}/folder_{1..5}
Q6:
在第五题创建的每一个文件夹下面都 创建第二题文本文件 me.txt ,内容也要一样。
touch me.txt
for i in $list; do cp ./me.txt ./folder_${i}/me.txt; for j in $list; do cp ./me.txt ./folder_${i}/folder_${j}/me.txt;done;done
6
Q7
再次删除掉前面几个步骤建立的文件夹及文件
rm -r ./fold*
Q8
下载 http://www.biotrainee.com/jmzeng/igv/test.bed 文件,后在里面选择含有 H3K4me3 的那一行是第几行,该文件总共有几行。
wget http://www.biotrainee.com/jmzeng/igv/test.bed
cat -n test.bed | grep H3K4me3
wc test.bed
8
Q9
下载 http://www.biotrainee.com/jmzeng/rmDuplicate.zip 文件,并且解压,查看里面的文件夹结构
wget http://www.biotrainee.com/jmzeng/rmDuplicate.zip
unzip rmDuplicate.zip
tree rmDuplicate
9
Q10
打开第九题解压的文件,进入 rmDuplicate/samtools/single 文件夹里面,查看后缀为 .sam 的文件,搞清楚 生物信息学里面的SAM/BAM 定义是什么。
- SAM(The Sequence Alignment / Map format)为序列比对文件的格式;
- BAM为SAM的二进制文件,主要是为了节约空间;可以用samtools工具实现sam和bam文件之间的转化。
cd rmDuplicate/samtools/single
ls -lh *.sam
head tmp.sam
less -SN tmp.sam
wc tmp.sam
10
Q11
安装 samtools 软件
- 参考文章生物信息学常见1000个软件的安装代码、samtools安装(已更新) - 简书、编译安装samtools,以及自己的Linux特点,前期需要安装make、gcc、libbz2-dev、htslib、curl-7.56.0(前三个用CL:apt-get安装,后两个需要下载包安装)
小插曲:之前用linux下载的速度较慢,后来用迅雷下载到电脑桌面,再copy到ubuntu子系统里。可以建立快捷方式
In -s /mnt/c/Users/Dell/Desktop ./Desktop
#为最后设置环境变量做准备
cd ./biosoft/mybin
echo 'export PATH=/home/li/biosoft/myBin/bin:$PATH' >>~/.bashrc
source .bashrc
#准备安装
cd ./biosoft/samtools
#wget https://github.com/samtools/samtools/releases/download/1.3.1/samtools-1.3.1.tar.bz2
# wget https://sourceforge.net/projects/samtools/files/latest/download
cp ./Desktop/samtools-1.3.1.tar.bz2 ./
tar xvfj samtools-1.3.1.tar.bz2
cd samtools-1.3.1
./configure --prefix=/home/li/biosoft/myBin
make
make install
11
安装这个samtools软件还是花费了挺长时间,会出现各种想不到的错误,然后再逐一解决或者换种思路。现在想想conda真是太方便了。
Q12
打开 后缀为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 -h tmp.sorted.bam | grep CL
12
Q13
根据上面的命令,找到我使用的参考基因组 /home/jianmingzeng/reference/index/bowtie/hg38 具体有多少条染色体。
- 有点未理解这个题目是什么意思
samtools view -h tmp.rmdup.bam | grep SN | wc
samtools view -h tmp.rmdup.bam | grep SN | cut -f 2 | sort | uniq -c
Q14
上面的后缀为BAM 的文件的第二列,只有 0 和 16 两个数字,用 cut/sort/uniq等命令统计它们的个数。
samtools view -h tmp.rmdup.bam | grep -v "^@" > tmp.txt
cut -f 2 tmp.txt | sort | uniq -c
14
Q15
重新打开 rmDuplicate/samtools/paired 文件夹下面的后缀为BAM 的文件,再次查看第二列,并且统计
cd ../paired/
samtools view -h tmp.rmdup.bam | grep -v "^@" > tmp.txt
cut -f 2 tmp.txt | sort | uniq -c
15
Q16
下载 http://www.biotrainee.com/jmzeng/sickle/sickle-results.zip 文件,并且解压,查看里面的文件夹结构, 这个文件有2.3M,注意留心下载时间及下载速度。
wget http://www.biotrainee.com/jmzeng/sickle/sickle-results.zip
unzip sickle-results.zip
tree sickle-results
16
Q17
解压 sickle-results/single_tmp_fastqc.zip 文件,并且进入解压后的文件夹,找到 fastqc_data.txt 文件,并且搜索该文本文件以 >>开头的有多少行?
unzip single_tmp_fastqc.zip
cd single_tmp_fastqc/
grep -c "^>>" fastqc_data.txt
# 24
Q18
下载 http://www.biotrainee.com/jmzeng/tmp/hg38.tss 文件,去NCBI找到TP53/BRCA1等自己感兴趣的基因对应的 refseq数据库 ID,然后找到它们的hg38.tss 文件的哪一行。
- https://www.ncbi.nlm.nih.gov/gene/7157
-
https://www.ncbi.nlm.nih.gov/gene/7157#reference-sequences
17-1
grep -n NM_000546 hg38.tss #TP53第一个refseq的ID
17-2
Q19
解析hg38.tss 文件,统计每条染色体的基因个数。
cut -f 2 hg38.tss | sort | uniq -c | sort -r | head -20
19
Q20
解析hg38.tss 文件,统计NM和NR开头的熟练,了解NM和NR开头的含义。
- NM 为转录产物序列,即成熟mNA转录本序列;
- NP指蛋白产物,主要是全长转录组氨基酸序列,但也有一些自由部分蛋白质的部分氨基酸的序列。
cut -f 1 hg38.tss | cut -c 1-2 | sort | uniq -c
20
网友评论