Bash

作者: lukeyan | 来源:发表于2018-01-06 16:30 被阅读14次

主要概念

Linux默认的shell是bash Shell

bash Shell 可以交互使用,或者作为一种强大的脚本语言来使用

bash启动时执行~/.bashrc文件中的命令,允许用户自定义其Shell

bash Shell保存它在所执行过的命令到历史记录中。在命令行可以使用!开头的各种历史记录替换名在历史记录中进行检索

1、bash Shell

2、命令列表和脚本

主要概念

多个命令可以用;隔开

退出命令时,每个命令向父命令返回一个整数,称作返回值

Shell变量$?表示先前执行命令的返回值

3、Bash变量

主要概念

Shell变量用A=apple语法来赋值。

用$字符来解析在变量,例如echo $A

在内核层,每个进程有一个由子进程继承的环境变量集合

export命令将Shell变量转化为环境变量

set和env命令分别用于列出Shell变量和环境变量

&& 和 ||有条件地隔开多个命令

4、命令行替换

5、  自定义Shell

主要概念

bash Shell本身即实现某些简单命令,这些命令与Shell的行为密切相连,被称为内置命令

Shell别名可创建为任意文本的命令

用alias命令建立和检查Shell别名

用unalias命令删除Shell的别名

用PSI变量自定义bash Shell提示符

Shell标记可以用set-f命令设定,用set+f命令删除

Shell选项用shopt命令检查、设置和复位

6、获得Shell脚本和Shell初始化

Shell脚本用source或 . 命令获得

Shell脚本在执行获得脚本的同一个Shell中执行

bash Shell既可以是登录Shell,也可以是非登录Shell

bash Shell既可以是交互式Shell,也可以是非交互式Shell

在启动每个登录Shell时可获得/etc/profile、/etc/profile.d目录中的文件,以及~/.bash_profile

在每次Shell启动时可获得/etc/bashrc和~/.bashrc

在每次退出Shell时可获得~/.bash_logout

7、登录Shell、非登录式Shell、交互式Shell和非交互式Shell

登录Shell

启动时,登录Shell首先获得/ect/profile,接着获得与模板/etc/profile.d/*.sh相匹配的所有文件

非登录Shell(交互式)

获得~/.bashrc文件,寻找并获得/etc/bashrc

非登录Shell(非交互式)

默认情况下,非交互式Shell和非登录Shell不获得任何启动文件

8、/etc/profile和~/.bash_profile用来配置环境变量,它们只被初始化一次。~/.bashrc和/etc/bashrc习惯上用于Shell特有的自定义

对于环境变量配置,有一个通用启动文件(/etc/profile)和一个本地启动文件(~/.bash_profile),前者可以被系统管理员用来配置系统范围,后者可以被个人用户自定义自己的环境。/etc/bashrc和~/.bashrc也有类似情况

相关文章

网友评论

      本文标题:Bash

      本文链接:https://www.haomeiwen.com/subject/gossnxtx.html