什么是Shell
狭义的壳程序shell指命令行软件,比如bash,zsh。
广义的shell还包括图形界面,是操作系统的接口。
作为使用者操作的文字界面,shell可以让使用者通过这界面发出指令,沟通核心(Kernel),从而让核心下达指令驱动硬件(Hardware)运行。shell在操作系统最外层,所以被称为壳程序。
shell的简略发展:
- bash 是Linux的默认shell,而sh是初代,后被bash取代
- tcsh 取代了原来Sun公司创始人Bill Joy发明的csh。
注:MacOS Pro 13 目前默认zsh,可通过输入/bin/bash/切换。
bash的优点
- 记忆使用过的指令,可以通过上键和下键实现这个功能
- tab键有命令和文件补全功能,一串指令的第一个字后按下tab表示命令补全,如果是第二个字后按下tab表示文件补全。
- 命令可利用alias设置别名,直接输入alias可知道当前设置的命令别名,使用alias 别名=‘原始命令’
- 前景背景控制、工作控制
- 程序化脚本shell scripts
- 万用字符(wildcard):*
bash的指令
-
检查指令是否为bash shell的内置命令:type
主要找出可执行文件,不是一般文件名
具体指令type [-tpa] name # [-tpa]表示选项与参数,详情请使用 man type 查询
-
指令的下达与快速编辑
指令太长时可以用来跳转到下一行\[Enter] # 中间无空格
-
组合键:快速删除指令
# 从光标处向前删除 [ctrl] + u # 从光标处向后删除 [ctrl] + k # 光标移动到指令最前 [ctrl] + a # 光标移动到指定最后 [ctrl] + e