虽然Linux有完善的GUI(GNOME、KDE),也发展出具有Touch功能的Android操作系统,但是CUI依然是Linux的哲学。
Linux kernel只是操作系统内核,提供对硬件的管理,但是为了更好的使用操作系统本身,操作系统会提供很多内置程序以及第三方程序,通过shell对程序/命令进行调用;shell称为命令解释器,根据输入的命令执行响应程序/命令。
通过cat /etc/shells
,可以查看当前系统所支持的shell,通过echo $SHELL
可以查看当前系统的默认shell。
![9f9dca6caf5932cf4fb73ceadd10c3a7.png](https://i-blog.csdnimg.cn/blog_migrate/b0d0d05ee8ed92be95c8c531de355fd4.png)
A、常见shell
- sh - UNIX标准shell
- bash - Linux标准shell,增强版的sh,GNU计划产物
- ksh - AT&T Bell Lab发展而来,兼容bash
- zsh - 基于ksh发展而来,功能更强大的shell
- csh - 被tcsh取代
- tcsh - 整合C shell,提供更多的功能
Linux默认shell为bash,可以通过chsh -s /bin/zsh
,修改默认shell。
B、shell常用操作
- tab - 命令补齐,路径补齐
- 上键 - 之前执行过的命令,ctrl+p,prev
- 下键 - 之后执行过的命令,ctrl+n,next
- 左键 - 光标向左(前)移动,ctrl+b,backward
- 右键 - 光标向右(后)移动,ctrl+f,forward
- backspace - 删除光标前面的字符,ctrl+h
- del - 删除光标后面的字符,ctrl+d,delete
- home - 将光标移动到起始,ctrl+a,the first letter
- end - 将光标移动到结束,ctrl+e,end