「生信基础课」初学者入门Linux最少必要的知识点

这是我在哔哩哔哩上课程的文字稿版本。我有点完美主义的倾向,所以为了避免自己因为觉得自己某个部分的说话不利索,不清楚,所以总是会写稿子。
素材库

这次课程的主题是生信入门必须学习的几个Linux操作。

为什么要学习Linux

如果你要学习生物信息学,那么你一定要学会使用Linux。这是因为,绝大部分的生信软件都需要运行在Linux平台,并且有些时候,你会要用到服务器去处理大量的数据,而这些服务器几乎都是Linux环境。

当然,你可以说,我可以用云平台呀,毕竟现在很多公司都开发了云平台,我们拖拖拽拽就可以搞分析了呀。是的,现在的云平台也来越成熟,使用体验也很棒,我也很喜欢。不过我还是建议大家学Linux,因为当你学会Linux之后,你会变得更加自由,不再受限于别人的平台,而且能让日常工作变得高效起来。

如何学习Linux

那么如何学习呢?通常你问别人如何学Linux的时候,对方十有八九会给你推荐鸟哥的书,这没啥毛病,因为我也是靠鸟哥的书入门的,那本书已经被我翻成了这副模样。

学习没有捷径,但是可以少走几步路。我们不需要精通Linux,成为Linux大牛,靠Linux吃饭,我们只需要掌握一些基本操作,搞得定日常基本操作就行。就像绝大部分人用Windows的时候,也不知道如何配置Windows里的环境变量,但是一点不妨碍基本使用呀。

通过我对自己平时操作的总结,我认为学Linux起码要掌握下面这三方面内容。

  • 操作迁移,就是把Windows上的常见操作都在Linux里找到对应的操作
  • TAB补全,不但可以让你的操作更快,而且还能让你避免大部分的报错
  • 环境变量,学习Linux一定要理解环境变量,否则你就装不好软件。

不过,最重要的是,你得先有一个Linux环境。我在哔哩哔哩上录制了两个视频,教大家如何在Windows平台上配置你的Linux环境,如何在Mac上配置Linux环境。

先看Vim视频:

本次视频的操作虽然是在mac上录制,但是适用于大部分的Linux环境,包括Ubuntu和CentOS,如果有什么问题,欢迎在留言区提问交流。

TAB补全

在演示Linux操作之前,我一定要先强调下tab补全的重要性,它是我认为最重要的一个操作。

初学者在学习Linux的时候,最常见的状态就是,按照教程内容,一个一个字符的敲。由于刚学习,敲代码还不熟练,因此,十有八九会出现敲错的情况,那么结果就是代码运行失败。运行失败怎么办?可能也不会去看报错,然后检查自己的输入,估计就是截图或者拍照发到群里提问了。

因此,在正式开始敲代码之前,大家先在键盘上找到tab,多敲几次,感受到它的存在。

后面,我还会不断强调它,直到它刻在你的脑子里。

操作迁移

接下来,我们来讲讲这次课程的主要内容,操作迁移

我们在Windows上最常做的操作是什么呢?我觉得,最常见的操作应该是下面这些吧

  • 浏览目录
  • 切换目录
  • 新建文件夹/删除文件夹
  • 新建文件/删除文件
  • 查看文本
  • 了解资源使用情况
  • 数据下载
  • 安装软件

那么这些操作在Linux里的对应命令是什么呢?我们先浏览一下命令,然后通过一个模拟的项目来一个个了解他们。

  • 浏览目录: ls
  • 切换目录: cd, pwd
  • 新建文件夹/删除文件夹: mkdir / rmdir / rm -r
  • 新建文件/删除文件: vim / rm
  • 查看文本: less, head, tail, cat
  • 了解资源使用情况: top
  • 数据下载: wget / curl
  • 安装软件: apt-get/yum/conda

那么这些命令应该怎么用呢?其实很简单,就是输入命令名,后面的参数,看情况加。强调一点,如果要用到参数,那么命令名和参数之间是需要空格分隔的。

我们以一个项目为例,去学习使用最常见的Linux命令。这个任务内容如下

1, 在家目录下创建文件夹,名为 abc

2, 将abc重命名为 study

3, 下载拟南芥的注释GFF文件, 解压缩

4, 使用less查看文件内容

5, 删除gff 文件

6, 删除 study文件夹

具体操作阅读原文看我的视频。大约在5分20秒处

环境变量

环境变量也是Linux学习中非常重要的知识点,不了解他甚至都不能用好软件。

不过环境变量属于哪种你不知道,你觉得很高级,一旦知道后,却发现很简单的存在。其实我们从小学或者初中开始就通过数学了解到它。比如说x + 3 =5, x+ 4=5,其中的x就是变量,就是会变的量。

在计算机里,它就用来存储其他的值一个名字,相当于一个中介。

变量有可以分为环境变量和局部变量,环境变量就是比局部变量作用更广泛的一个变量。举个例子,当我说到爱因斯坦这个名字时,这会让你想到的是一个物理学家,但是如果你家里有一只猫,它也叫爱因斯坦,他就是一个局部变量。局部变量可以覆盖环境变量。

接下来我们将会通过一个例子,通过PATH这个环境变量来理解。

  • 查看环境变量PATH

  • 新建一个目录存放软件

  • 将目录加入环境变量PATH

  • 下载软件

  • 给软件添加执行权限

  • 测试软件

具体操作阅读原文看我的视频。在15分钟的时候。

视频我传到了哔哩哔哩,假如你不喜欢哔哩哔哩,想要下载我的2880 x 1800(大约3G)的视频,这是百度盘地址,链接: https://pan.baidu.com/s/17yxk78_kpeL5BA-3P0i06Q 密码:7ro0。相信我,你哔哩哔哩已经够高清了,你真的不需要20分钟3G的视频。

对于入门而言,知道的越少越好,因为细节无穷无尽。你先要上手,会敲命令了。那么后期继续深入反而就只是时间问题了。

之后,我会更新一系列入门提高的视频,介绍Linux的各种细节,比如说,

  • 括号的用法
  • 变量操作
  • shell脚本