Linux学习笔记(二)

mark

鉴于以后要大量使用Linux系统处理生物信息学数据,因此加强自身linux系统的学习,开辟一个新的分类专门记录我学习Linux的学习笔记,一是为了我自己以后方便查看,二也是希望能帮助到其他学习Linux系统的人,共勉!!!

快速查看数据,以bed(只有三列)格式数据为例

$ head Mus_musculus.GRCm38.75_chr1.bed
1       3054233 3054733
1       3054233 3054733
1       3054233 3054733
1       3102016 3102125
1       3102016 3102125
1       3102016 3102125
1       3205901 3671498
1       3205901 3216344
1       3213609 3216344
1       3205901 3207317

head默认显示前十行,可以通过参数n来指定显示几行,比如只显示三行:

$ head -n 3 Mus_musculus.GRCm38.75_chr1.bed
1       3054233 3054733
1       3054233 3054733
1       3054233 3054733

tail

head相对的有一个命令tail,tail显示后几行,默认显示后十行,也可以通过参数n来指定显示几行:

$ tail Mus_musculus.GRCm38.75_chr1.bed
1       195166217       195166390
1       195165745       195165851
1       195165748       195165851
1       195165745       195165747
1       195228278       195228398
1       195228278       195228398
1       195228278       195228398
1       195240910       195241007
1       195240910       195241007
1       195240910       195241007
$ tail -n 3 Mus_musculus.GRCm38.75_chr1.bed
1       195240910       195241007
1       195240910       195241007
1       195240910       195241007

基于这个特性,tail可以用来去除数据集的前几列,通过在参数n后面添加数字(即-n +x,区别于-n 2)指定从第几行开始,比如从第三行开始,也就是剔除了前两行。

$ seq 5 > nums.txt
$ cat nums.txt
1
2
3
4
5
# 从第三行开始
$ tail -n +3 nums.txt
3
4
5

结合这两个命令,我们可以十分方便的查看一个数据集的前几行以及后几行:

$ (head -n 2; tail -n 2)< Mus_musculus.GRCm38.75_chr1.bed
1       3054233 3054733
1       3054233 3054733
1       195240910       195241007
1       195240910       195241007

less

一般小的文件我们直接用cat进行查看,但是如果大数据集的话用cat就十分不方便查看,less就是用来查看大数据集的命令。less一次性只显示前几行,但是可以通过滚动查看后面的信息,最后按q结束。下面列出less常用的命令:

Shortcut Action
space bar Next page
b Previous page
g First line
G Last line
j Down (one line at at time)
k Up (one line at at time)
/<pattern> Search down (forward) for string <pattern>
?<pattern> Search up (backward) for string <pattern>
n Repeat last search downward (forward)
N Repeat last search upward (backward)

wc(word count)

查看数据有多少行可以用wc命令,wc会显示出数据有多少行、多少word以及多少字符(characters)。

$ wc Mus_musculus.GRCm38.75_chr1.bed
  81226  243678 1698545 Mus_musculus.GRCm38.75_chr1.bed

wc支持同时处理多个文件:

$ wc Mus_musculus.GRCm38.75_chr1.bed Mus_musculus.GRCm38.75_chr1.gtf
   81226   243678  1698545 Mus_musculus.GRCm38.75_chr1.bed
   81231  2385570 26607149 Mus_musculus.GRCm38.75_chr1.gtf
  162457  2629248 28305694 总用量

如果只想显示多少行,添加参数l就行了:

$ wc -l Mus_musculus.GRCm38.75_chr1.bed
81226 Mus_musculus.GRCm38.75_chr1.bed

更多用法可以用man wc查看。

Researcher

I am a PhD student of Crop Genetics and Breeding at the Zhejiang University Crop Science Lab. My research interests covers a range of issues:Population Genetics Evolution and Ecotype Divergence Analysis of Oilseed Rape, Genome-wide Association Study (GWAS) of Agronomic Traits.

comments powered by Disqus