(9)——bash1

最后更新于:2022-04-01 14:44:27

## 一、Shell简介 Shell :命令行解释器,是用户与系统沟通时的媒介 在Unix系统中有各种Shell, Linux采用bash为其默认shell 系统可以使用的shell记录在 /etc/shells中 ## 二、bash bash :Bourne Again Shell的缩写 GNU计划的一个组件 与Unix上的Bourne Shell完全兼容。 支持命令行输入、操作历史查询、快捷键、使用变量等功能。 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb2ed90e.jpg) ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb30b099.jpg) ## 三、预定义环境变量 在bash中有很多预定义环境变量(预先定义好名称和使用的变量) 系统通过预定义环境变量来定义shell的环境 用户可以用set或env查询当前的环境变量 set可以查看环境变量(所有shell)以及本地变量(当前shell),evn只能查看环境变量. ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb31ca1c.jpg) 常用的预定义环境变量 HOME : 当前用户的主目录 PATH : 当前用户的可执行文件搜索路径 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb32e18d.jpg) LANG : 程序应该使用的默认语言 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb3404b8.jpg) PS1 : 行提示符 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb352fcd.jpg) ## 四、history 在bash中输入histroy指令可以查询用户的过往操作。 内存中记录的过往指令数根据环境变量中HISTSIZE而定 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb36313f.jpg) history表存储在内存中,在用户logout时会记录入用户的主目录下的.bash_history文件中。在下次login时载入。 .bash_history中的指令数根据环境变量中的HISTFILESIZE而定。 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb374efc.jpg) 强制写入:![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb3876a3.jpg) ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb39ed8b.jpg) ## 五、调用过往指令 使用!来调用过往指令 !! :重复执行上一条指令 !a  :重复执行上一条以a为首的指令 !number :重复执行上一条在history表中记录号码为number的指令 !-number :重复执行前第number条指令 !$ :截取上一条指令的最后一个值 可以用<ctrl + r> 来在history表中查询某天过往指令 ## 六、alias 在shell下键入alias可以查询当前alias列表 用户可以alias来为一条命令取一个简单的别名 用户也可以用unalias来取消一条别名记录 alias记录在shell中总是先行 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb3b0ecd.jpg) ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb3ca86b.jpg) ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-06-14_575f8bb3de983.jpg)
';