学生信的那些事儿之十三 - 生信技能树Linux练习20题

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

# 在自己的目录下创建一个专门用于做练习的文件夹先
cd /trainee/Jude
mkdir pracitce
cd practice
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

# 需要明确去什么地方,做什么
cd 1/2/3/4/5/6/7/8/9
touch me.txt

3. 在文本文件 me.txt里面输入如下内容:
Go to: http://www.biotrainee.com/
I love bioinfomatics.
And you ?

# 编辑文本内容用vim
vim me.txt
i
Go to: http://www.biotrainee.com/
I love bioinfomatics.
And you ?
esc
:wq

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

# 强制删除目录
cd /trainee/Jude/practice
rm -rf 1

5. 在任意文件夹下面创建 folder1~5这5个文件夹,然后每个文件夹下面继续创建 folder1~5这5个文件夹。

# 我的方法(开始以为简单,后来发现很naive)
mkdir folder{1..5} #第一步创建5个文件夹
vim script #第二步写脚本
i
#!/bin/bash
for folder in folder1 folder2 folder3 folder4 folder5
do cd $folder; mkdir folder{1..5}; cd ..
done
esc
:wq
./script #第三部运行脚本,创建套娃文件夹

# 其他同学的方法,主要在第二步
mkdir -p folder{1..5}/folder{1..5}

6. 在第五题创建的每一个文件夹下面都创建第二题文本文件 me.txt ,内容也要一样.

# 开始是不会的,看了别人的答案,需要用到 xargs
touch me.text
echo folder{1..5}/folder{1..5} | xargs -n 1 cp -v me.txt

注释
xargs:并不是所有命令都可以把管道符前面的输出作为输入,xargs就可以实现这个转换,建议参考:xargs命令详解
-n:表示每次传递给后面命令几个参数,后面跟数字“1”表示传递1个参数

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

rm -rf folder*

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

wget http://www.biotrainee.com/jmzeng/igv/test.bed
cat -n test.bed | grep H3K4me3
cat -n test.bed | wc

9. 下载 http://www.biotrainee.com/jmzeng/rmDuplicate.zip 文件,并且解压,查看里面的文件夹结构.

wget http://www.biotrainee.com/jmzeng/rmDuplicate.zip
unzip rmDuplicate.zip
cd rmDuplicate/
tree -d
  1. 打开第九题解压的文件,进入 rmDuplicate/samtools/single 文件夹里面,查看后缀为.sam的文件,搞清楚 生物信息学里面的SAM/BAM 定义是什么。
cd rmDuplicate/samtools/single
less -S -N tmp.sam 

注释*:
SAM文件:是sequence alignment/map format的缩写,记录序列比对信息的文件,分为标头注释部分和序列比对部分,其中序列比对部分至少11列。
BAM文件是SAM文件的二进制格式,可用samtools view命令查看,格式转化便于储存更多的数据。

11. 安装 samtools软件

# 如果已经安装了conda,很简单
conda install samtools

# 如果单独安装
wget -c https://github.com/samtools/samtools/releases/download/1.9/samtools-1.9.tar.bz2
tar -jxvf samtools-1.9.tar.bz2
cd samtools-1.9/
./configure --prefix=/trainee/Jude/practice/samtools-1.9
make
make install
echo 'export PATH="/trainee/Jude/practice/samtools-1.9:$PATH"'>>~/.bahsrc
source ~/.bashrc

12. 打开后缀为BAM的文件,找到产生该文件的命令。

# 打开BAM文件
samtools view tmp.sorted.bam | less -SN
# 产生bam文件的命令一般都在头部注释信息中,不过是在头部信息的最后一行,所以用tail命令
which samtools
/usr/bin/samtools view -H tmp.sorted.bam | tail
# 经过上面的操作可知生成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

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

# 方法一:通过看BAM文件标头信息确认染色体数量,筛选时用到正则表达式
samtools view -H tmp.rmdup.bam | grep -o -E "SN:chr[0-9]+|SN:chr[a-zA-Z]"| sort | uniq -c | wc -l

# 方法二:直接找打hg38.fa文件查看染色体数量(hg38.fa需要绝对路径)
less -S hg38.fa | grep ">chr" | cut -d "_" -f 1 | sort | uniq -c | wc -l

14. 上面的后缀为BAM 的文件的第二列,只有016 两个数字,用 cut/sort/uniq等命令统计它们的个数。

# 方法一(复杂)
samtools view tmp.sorted.bam | less -SN | cut -f 2 | grep 0 | wc
samtools view tmp.sorted.bam | less -SN | cut -f 2 | grep 16 | wc

# 方法二(简单)
samtools view tmp.sorted.bam | less -SN | cut -f 2 | sort | uniq -c

15. 重新打开rmDuplicate/samtools/paired文件夹下面的后缀为BAM的文件,再次查看第二列,并且统计。

cd /trainee/Jude/practice/rmDuplicate/samtools/paired
samtools view tmp.sorted.bam | less -SN | cut -f 2 | sort | uniq -c

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
cd sickle-results/
tree

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

cd sickle-results
unzip single_tmp_fastqc.zip
cd single_tmp_fastqc/
less -SN fastqc_data.txt | grep \>\> | wc

18. 下载 http://www.biotrainee.com/jmzeng/tmp/hg38.tss 文件,去NCBI找到TP53/BRCA1等自己感兴趣的基因对应的 refseq数据库 ID,然后找到它们在hg38.tss 文件的哪一行。

# 涉及到refseq数据库中对应基因的ID查找
wget http://www.biotrainee.com/jmzeng/tmp/hg38.tss
less -SN hg38.tss | grep -n NM_001126115
less -SN hg38.tss | grep -n NM_007294

:一文看懂NCBI的refseq

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

# 某染色体有多少个重复就对应着多少个基因
less hg38.tss | awk '{print$2}' | cut -c 1-5 | sort |uniq -c

# 或者
less hg38.tss | cut -f 2 | cut -c 1-5 | sort |uniq -c

注释
.tss 文件记录基因坐标,第一列是基因的Refseq ID,第二列是染色体号,第三列是基因起始坐标,第四列是基因终止坐标。

20. 解析hg38.tss 文件,统计NMNR开头的数量,了解NMNR开头的含义。

less -SN hg38.tss | grep NM | wc
less -SN hg38.tss | grep NR | wc

注释*:
NM含义:表示标准序列(转录产物序列,成熟mRNA转录本序列)
NR含义:非编码蛋白的mRNA序列

参考文章

  1. Linux练习题
  2. 生信linux20题测试
  3. Linux常规操作笔记
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容

  • Linux 20题-生信技能树 一、在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列...
    天涯清水阅读 2,164评论 0 2
  • 一、在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列。 mkdir –p 1/2/3...
    Hocchan_7阅读 4,205评论 1 50
  • 生信人的linux考试20题 一、 在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列...
    泥人吴阅读 1,989评论 0 27
  • 生信人的linux考试(20题) 1.在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系...
    Bio小盼阅读 491评论 0 1
  • 学完了理论,开始实践一下吧主要参考了jimmy提供的练习题 一、在主目录下面创建/tmp文件夹,并且使其中包含 1...
    刘小泽阅读 2,713评论 0 12