环境:centos7.6,腾讯云服务器 Linux文章都放在了专栏:【 Linux 】欢迎支持订阅 🌹
我们已经学习并知道了操作系统实际上就是一款软件,一款用来管理计算机软硬件资源,为用户提供良好的执行环境的软件。假如该软件能被用户随意操作,就会有可能出现因操作不当而导致整个系统崩溃的情况。因此:操作系统是不能直接与用户沟通的。
但是,计算机的使用一定是离不开操作系统的,基于此情况,就有了在OS上面发展的各种应用程序。用户可以通过应用程序来指挥OS内核,从而让内核完成我们所需要的硬件任务。
shell的作用
★简单总结一下:
我们可以打开文件/etc/shells,可以查看我们Linux下的shell,打开后内容如下:
/bin/sh (已经被/bin/bash所替换)
/bin/bash (Linux默认的shell)
/usr/bin/sh (同/bin/sh)
/usr/bin/bash (同/bin/bash)
/bin/tcsh (整合C shell,提供更多的功能)
/bin/csh (被/bin/tcsh替换)
我们可以发现,Linux默认的shell就是bash,所以我们常说的命令行解释器,其实就指的是bash。当我们登陆时,系统就会自动给我们一个shell来工作,我们可以在文件/etc/passwd中查看用户登陆的shell。
文件中的内容
我们打开后,会发现每一个用户都有自己的shell,这个shell就是bash,当然这也可以说明一点:Linux是一个多人多任务的环境,即每一个用户都有自己对应的bash。即使是在同一个机器登录。
★这里简单总结一下;
Linux既然使用bash作为默认shell,那么bash就一定有它的优点吸引住了Linux。我们接下来简单了解一下bash的优点:
我们为什么可以通过上下键来翻看我们的历史命令,就是因为它是bash的一个功能,而我们既然可以bash上工作,那么理所当然的就可以使用这个功能。-----通过上下键来翻看历史指令。
指令都存放在家目录下的.bash_history中,~表示是当前用户的家目录,我们可以进入里面,用ls -al来查看家目录下的所有文件,打开.bash_history文件,会看到我们上一次登录时的历史指令。(本次登录的指令记录会被缓存到内存中,只有退出登录时才会被记录到该文件中)
演示
我们在输入一个指令时,假如只知道前面的一部分,后面的给忘记了,就可以按键盘上面的Tab键(可能会按两次),然后屏幕就会显示以我们写的字母开头的所有指令,帮助我们回忆。并且当一个文件名过于长,而我们又懒得一个字母一个字母敲打时,就可以只输入前几个字母,就会实现文件名自动补全。很爽的一个功能。
Tab键演示
我们使用的一些指令,比如alias(给指令起别名)、cd、等指令都是bash内置的指令,只有使用bash工作时,才可以使用这些指令。我们可以通过type -t 指令的命令来查看该指令是否为bash的内置指令。
我们也知道,指令实际上就是一个程序,也是一个文件,Linux下一切皆文件,所以我们可以用type -a 指令 的命令来查找指令所在的位置,当然也可以用which来查找。
查找指令所在位置演示
除此之外,还有任务管理、前后台控制、程序化脚本的支持、包括我们用过的通配符的使用(比如*),都是bash所支持的功能,这里就不一一介绍了。后面有时遇到再进行扩展。
由此可见,bash的功能真的很香,怪不得Linux默认的shell是bash。