这篇文章主要介绍的是 Bash,希望各位能从这篇文章里对 Bash 有一个简单的了解

Bash 是什么

Bash,即 Bourne Again SHell,顾名思义它是和 Shell 有关的。Shell是一个程序,就像你在 Windows 里面经常按的 cmd 一样,你可以在里面输入命令运行,或者自己写一个脚本然后让 Shell 读取里面的命令运行。

Shell

Shell 实际上不只是一个程序。它原先只是一个用 C 写成的程序,现在同样也代表一种脚本语言。而作为脚本语言,Shell 就需要解释器,一般来说 Linux 默认的解释器就是 Bash,不管是从命令行中直接输入的命令还是脚本的命令,都需要经过 Bash 的解释才能运行。

解释和编译

实际上绝大多数的程序设计语言都需要使用这两种相当于预处理工序中的一种。编译型的语言比如 C++ 和 Java 这些会把我们写的代码编译成接近计算机底层的目标代码,这样运行起来会很快,但是因为太接近底层,所以有的时候需要更多的代码来完成一个看起来简单的操作。

而解释型语言一样会把我们的代码解释成目标代码,不过这样的目标代码比较高层,我们编写起来会比较方便,而且脚本执行的速度也不算太慢。

Shell 的种类

Shell 分为图形界面和命令行式两种,图形界面最常见的就是 Windows explorer 了,它包括了桌面和文件管理,这就意味着如果你在任务管理器里把它关掉……你可能屏幕上上只剩下任务管理器是亮着的了,运行新任务然后输入 explorer.exe 可以重新打开它。命令行式的 Shell 包括 Windows 里面的 cmd.exe 和 Linux 里面的 Bash 等等,它基本上只提供了一个命令行窗口,但是通过命令同样可以做到比图形界面更高效。

Bash 的功能

1、命令记录历史:Bash 可以记录曾经输入过的命令,保存在~/.bash_history 文件中。
2、tab 键自动补全:使用 tab 键可以自动补全命令或者目录。
3、alias 命令别名:可以使用 alias ll=’ls -al’ 来设置命令的别名。
4、工作控制:可以将某些任务放在后台去运行。
5、程序脚本:可以执行 shell 脚本文件
6、通配符:除了完整的字符串之外, Bash 还支持许多的通配符来帮助用户查询与命令下达。

参考资料:

bash的基本语法

鸟哥的Linux私房菜-认识与学习BASH