生信人的Linux考试

作者: 北欧森林 | 来源:发表于2021-01-20 23:58 被阅读0次

试题来源于生信菜鸟团论坛的生信人的linux考试

(试题是生信菜鸟团论坛上爬过来的,使用的服务器是转发生信技能树推文在朋友圈集3个赞换的,学习的教程是生信技能树放在B站上的。
神呀,保佑Jimmy大神吧,愿他老人家福寿、安康~~~)

重点: (去可视化概念+练习) 了解 命令+参数+文件 的模式

基础知识: cd -, cd .. , cd -, history, !5 , /home/ , /tmp/ , >,&,jobs,nohup 1,2,0
文件目录操作:ls,cd,pwd,mkdir,rm,mv,cp,touch,head,tail,less,more
系统管理: df,du,top,free,ps,ipconfig,netstat,ssh,scp,
用户权限:chown,chgrp,groups,ls
文本操作:awk,grep,sed,paste,cat,diff,wc,vi

使用腾讯云实验室的linux服务器:https://cloud.tencent.com/developer/labs/lab/10000
参考 生物信息学常见1000个软件的安装代码! 来安装软件。

如果学完了,理论上你看下面的总结应该是有茅塞顿开的感觉。
linux命令行文本操作一文就够
linux系统环境变量一文就够
构建shell脚本一文就够

一、在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列。

mkdir -p 1/2/3/4/5/6/7/8/9
tree 1
Q1

二、在创建好的文件夹下面,比如我的是 /Users/jimmy/tmp/1/2/3/4/5/6/7/8/9 ,里面创建文本文件 me.txt

cd tmp0/1/2/3/4/5/6/7/8/9
vim me.txt
Q2

三、在文本文件 'me.txt' 里面输入内容:

Go to: http://www.biotrainee.com/
I love bioinfomatics.
And you ?

cat me.txt
Q3

四、删除上面创建的文件夹 1/2/3/4/5/6/7/8/9 及文本文件 me.txt

cd tmp0
rm -r 1
Q4

五、在任意文件夹下面创建 folder1~5这5个文件夹,然后每个文件夹下面继续创建 folder1~5这5个文件夹,效果如下:

mkdir -pv folder_{1..5}/folder_{1..5} # -v表示显示创建过程
ls
ls */
tree 
Q5

六、在第五题创建的每一个文件夹下面都 创建第二题文本文件 me.txt ,内容也要一样。(这个题目难度超纲,建议一个月后再回过头来做--确实很难!)

vim txt.sh
bash -x txt.sh
tree 
Q6_1 Q6_2

七,再次删除掉前面几个步骤建立的文件夹及文件

# 匹配删除(不删除脚本)
rm -r folder_*
Q7

八、下载 http://www.biotrainee.com/jmzeng/igv/test.bed 文件,后在里面选择含有 H3K4me3 的那一行是第几行,该文件总共有几行。

wget -c http://www.biotrainee.com/jmzeng/igv/test.bed # -c为断点续传

grep -n H3K4me3 test.bed 
grep -no H3K4me3 test.bed  #只显示匹配上的
grep -n --color H3K4me3 test.bed #给匹配项加上颜色(注意color前面是两个-)

wc -l test.bed
Q8
九、下载 http://www.biotrainee.com/jmzeng/rmDuplicate.zip 文件,并且解压,查看里面的文件夹结构
wget -c http://www.biotrainee.com/jmzeng/rmDuplicate.zip
unzip rmDuplicate.zip

tree rmDuplicate
# 6 directories, 30 files
Q9

十、打开第九题解压的文件,进入 rmDuplicate/samtools/single 文件夹里面,查看后缀为 .sam 的文件,搞清楚 生物信息学里面的SAM/BAM 定义是什么。

cd rmDuplicate/samtools/single
less tmp.sam
cat tmp.sam | head # 默认前十行
Q10

关于sam和bam:

  • SAM(Sequence Alignment/Map)格式是一种通用的比对格式,用来存储reads到参考序列的比对信息。
  • SAM是一种序列比对格式标准,由Sanger制定,是以TAB为分割符的文本格式。主要应用于测序序列mapping到基因组上的结果表示,当然也可以表示任意的多重比对结果。
  • SAM分为两部分,注释信息(header section)和比对结果部分(alignment section)。
  • 行:除注释外,每一行是一个read。
  • BAM是SAM的二进制格式,因此两者格式相同,只是BAM文件占用储存空间更小,运算更快
    (来自简书作者@井底蛙蛙呱呱呱)

十一、安装 samtools 软件

wget -c https://sourceforge.net/projects/samtools/files/samtools/1.8/samtools-1.8.tar.bz2
tar -xvf samtools-1.8.tar.bz2 #参数或者为-jxvf,但-xvf可以识别两种压缩文件
cd samtools-1.8/
make
Q11

十二、打开 后缀为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

/home/data/vip114/samtools-1.8/samtools view tmp.rmdup.bam
# 不能像sam文件那样用less命令打开,会出现一堆乱码
# bam文件里是没有产生该文件的命令的,在tmp.header文件里找
tail -n 3 tmp.header
Q12

十三题、根据上面的命令,找到我使用的参考基因组 /home/jianmingzeng/reference/index/bowtie/hg38 具体有多少条染色体。

less tmp.header |head #查看
grep -o -E "SN:chr[0-9]+|SN:chr[a-zA-Z]+" tmp.header | uniq # uniq 只会去除紧邻的重复项

grep -o -E "SN:chr[0-9]+|SN:chr[a-zA-Z]+" tmp.header |sort| uniq
#method 2
grep -o -E "SN:chr[0-9]+|SN:chr[a-zA-Z]+" tmp.header |sort -u

grep -o -E "SN:chr[0-9]+|SN:chr[a-zA-Z]+" tmp.header |sort| uniq|wc -l 
Q13_1
Q13_2

十四题、上面的后缀为BAM 的文件的第二列,只有 0 和 16 两个数字,用 cut/sort/uniq等命令统计它们的个数。

/home/data/vip114/samtools-1.8/samtools view tmp.rmdup.bam |cut -f 2|sort -n|uniq -dc
Q14
十五题、重新打开 rmDuplicate/samtools/paired 文件夹下面的后缀为BAM 的文件,再次查看第二列,并且统计
/home/data/vip114/samtools-1.8/samtools view tmp.rmdup.bam |cut -f 2|sort -n|uniq -dc
Q15

十六题、下载 http://www.biotrainee.com/jmzeng/sickle/sickle-results.zip 文件,并且解压,查看里面的文件夹结构, 这个文件有2.3M,注意留心下载时间及下载速度。

wget -c http://www.biotrainee.com/jmzeng/sickle/sickle-results.zip

ls -lh
unzip sickle-results.zip
tree sickle-results
Q16

十七题、解压 sickle-results/single_tmp_fastqc.zip 文件,并且进入解压后的文件夹,找到 fastqc_data.txt 文件,并且搜索该文本文件以 >>开头的有多少行?

unzip single_tmp_fastqc.zip 
cd single_tmp_fastqc/
ls
less fastqc_data.txt
grep ^\>\> fastqc_data.txt |cat -n
Q17

十八题、下载 http://www.biotrainee.com/jmzeng/tmp/hg38.tss 文件,去NCBI找到TP53/BRCA1等自己感兴趣的基因对应的 refseq数据库 ID,然后找到它们的hg38.tss 文件的哪一行。eg: TP53(tumor protein p53): https://www.ncbi.nlm.nih.gov/gene/7157

wget -c http://www.biotrainee.com/jmzeng/tmp/hg38.tss

grep NM_001126113 hg38.tss #不需要小数点
Q18

十九题、解析hg38.tss 文件,统计每条染色体的基因个数。

cat hg38.tss |head
cat hg38.tss |cut -f 2 >chr.txt
grep -o -E "chr[0-9]{1,2}|chr[a-zA-Z]{1,2}" chr.txt >chr2.txt

wc -l chr.txt
wc -l chr2.txt

sort chr2.txt |uniq -dc

#将以上命令写成一行
cat hg38.tss |cut -f 2|grep -o -E "chr[0-9]{1,2}|chr[a-zA-Z]{1,2}"|sort| uniq -dc
Q19

没有看明白为什么grep -o -E "chr[0-9]{1,2}|chr[a-zA-Z]{1,2}" chr.txt >chr2.txt之后,chr.txt和chr2.txt的列数还是一样的?

Q19?
卖萌哥的答案稍微易懂一些:
head hg38.tss 
head hg38.tss |awk '{print $2}'  #取出第二列
head hg38.tss |awk '{print $2}'|sort| uniq -c #计数

cat hg38.tss |awk '{print $2}' |sort | uniq -c |grep -v '_' # 反向获取:排除带“_”的染色体行
Q19_m2

二十题、解析hg38.tss 文件,统计NMNR开头的熟练,了解NMNR开头的含义。

grep -o -E "NM|NR" hg38.tss |sort |uniq -dc
Q20

NM:转录组产物的序列mRNA
NR:非编码的转录组序列ncRNA

相关文章

  • 20181204

    ########################## 生信人的linux考试 ################...

  • 生信人的linux考试

    一、在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列。 二、在创建好的文件夹下面,...

  • 生信人的linux考试

    一、在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列。 二、在创建好的文件夹下面,...

  • 生信人的linux考试

    linux都无法掌握,就 不要学生信了,没有意义,需要时间和努力才能掌握linux,也不要妄想就接触了linux一...

  • 生信人的linux考试

    --------------- ################# Nickier 2018-12-09 ####...

  • 生信人的linux考试

    一、在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列 二、在创建好的文件夹下面,比如...

  • 生信人的Linux考试

    试题来源于生信菜鸟团[http://www.bio-info-trainee.com/]论坛的生信人的linux考...

  • Linux作业1--基础20题

    作业原文:生信人的linux考试 | 生信菜鸟团 本次使用的Linux系统为Win10的Ubuntu子系统 Q1:...

  • 生信人的linux考试答题

    作业来源参考:https://www.jianshu.com/p/9260baae4b4e 在任意文件夹下面创建形...

  • 生信linux20题测试

    来源:生信人的linux考试 http://www.bio-info-trainee.com/2900.html ...

网友评论

    本文标题:生信人的Linux考试

    本文链接:https://www.haomeiwen.com/subject/faxioktx.html