初探Linux命令行
- window系统推荐使用虚拟机安装
- 购买云服务
- MacOS打开终端即可(Unix与Linux属于同源,命令行上操作大同小异)
前提条件
想要成长必须要克服困难,程序的世界还是英语作为主导的阶段,需要接受现实,其次通过学习他们优秀的设计思想,才能得到更好的正反馈,以下几点不是必备的前提,而是接受这些挑战慢慢成为自己的习惯。
- 拥抱Linux系统
- 熟悉英语
- 认清何为全球化(you know 🪜?)
- 查看一手文档
- 愿意折腾,用着不爽自己定制
- 追求极致的高效
- 愿意学习抽象思维
与终端相关的术语
terminal
终端(termimal)= tty(Teletypewriter 电传打印机),作用是提供一个命令的输入输出环境。
在linux下使用组合键ctrl+alt+T打开的就是终端,可以认为terminal和tty是同义词。
shell
**shell是一个命令行解释器,是linux内核的一个外壳,负责外界与linux内核的交互。**当打开一个terminal时,操作系统会将terminal和shell关联起来,当我们在terminal中输入命令后,shell就负责解释命令。
console
在系统启动完成之前,terminal不能连接到主机上,**为了记录主机的重要日志(比如开关机日志,重要应用程序的日志),系统中就多了一个名为console的设备,这些日志信息保存在console中。**一台电脑只有一个console,但可以有多个terminal,console可以理解为总控制台。
bash
linux系统上比较常见的有Bourne shell (sh)、C shell (csh) 和 Korn shell (ksh),三种shell 都有它们的优点和缺点。
Bourne shell 的作者是 Steven Bourne,它是 UNIX 最初使用的shell 并且在每种 UNIX 上都可以使用。
bash的全称叫做Bourne Again shell,从名字上可以看出bash是Bourne shell的扩展,bash 与 Bourne shell 完全向后兼容,并且在 Bourne shell 的基础上增加和增强了很多特性,如命令补全、命令编辑和命令历史表等功能,它还包含了很多 C shell 和 Korn shell 中的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。
总而言之,bash是shell的一种,是增强的shell。