本文面向Tanglab及类似的需要使用Linux、但缺乏相关基础的科研人士

本文基于《**TLCL 快乐的 Linux 命令行》** ,计划每周给实验室同学普及一些linux常识。如果你希望深入学习,应当阅读原文。

如果你拥有丰富的经验,基础内容对你的帮助可能比较有限,但扩展内容应该能给你一些有益的启发。

Linus Torvalds

Linus Torvalds

Linus Torvalds 在1991年写了 Linux 内核的第一个版本。一提到 Linux,许多人都会说到“自由”——“自由”是指一台没有任何秘密的计算机,你可以从它那里了解一切。基于命令行界面(CLI)的Linux可以完成很多复杂的任务,它更原始,也更强大、自由。学习 Linux 命令行会让你受益匪浅,给你极大的回报。不像其他一些计算机技能, 一段时间之后可能就被淘汰了,命令行知识却不会落伍,你今天所学到的,在十年以后 都会有用处。命令行通过了时间的考验。

Shell - 1:Shell与终端

基础内容:从终端认识shell(了解);扩展内容:后台运行shell(实用),其他shell

shell 就是一个程序,它接受从键盘输入的命令, 然后把命令传递给操作系统去执行。几乎所有的 Linux 发行版(Ubuntu, CentOS, etc)都提供一个名为 bash 的 来自 GNU 项目的 shell 程序。“bash” 是 “Bourne Again SHell” 的首字母缩写, 是最初在 Unix 上由 Steve Bourne 写成 shell 程序 sh 的增强版。

当使用图形用户界面时,我们需要另一个和 shell 交互的叫做终端仿真器的程序。 如果我们浏览一下桌面菜单,可能会找到一个。虽然在菜单里它可能都被简单地称为 “terminal”。在windows 11下,有windows terminal.

好,开始吧。启动终端仿真器!一旦它运行起来,我们应该看到一行像这样的文字:

(base) [jiangyd@localhost ~]$

这叫做 shell 提示符,当 shell 准备好了去接受输入时,它就会出现。然而, 它可能会以各种各样的面孔显示,这则取决于不同的 Linux 发行版, 它通常包括你的用户名@主机名,紧接着当前工作目录(稍后会有更多介绍)和一个美元符号。

我这边前面还有一个(base),这是因为我使用了anaconda的默认环境,这也会在之后讲。

如果提示符的最后一个字符是“#”, 而不是“$”, 那么这个终端会话就有超级用户权限。 这意味着,我们要么是以 root 用户的身份登录,要么是我们选择的终端仿真器提供超级用户(管理员)权限。

[root@localhost jiangyd]#