《Linux命令行与Shell脚本编程大全》学习笔记3

     0、下面是书本第五章<使用Linux环境变量>的学习笔记,并且只记录那些,本人认为重要的、不知道的抑或遗忘的内容。

     1、在bash shell中,环境变量分为两类:全局变量,局部变量。全局环境变量不仅对shell会话可见,对所有shell创建的子进程也可见。局部变量则只对创建它们的shell可见。这让全局环境变量对那些子进程中需要获取父进程信息的程序来说非常有用。可以命令printenv 查看Linux系统在你开始bash会话之前就设置了一些全局环境变量。Linux系统也默认定义了标准局部环境变量,但没有直接的命令查看。set命令会显示某个特定进程设置的所有环境变量,当然,这也包括全局环境变量。

     2、为了创建全局变量,我们可以用export命令,这样他的子进程就可以查看创建的变量名,比如:
   
                                                  
注意在导出局部环境变量时,不能用$符号去引用变量名;还有就是在子进程中创建一个全局环境变量,对父进程来说仍然不可见的。比如:
                                     

     3、可以用命令unset来删除环境变量,注意在unset命令中引用环境变量时,不要用$符号。如果在子进程中删除了一个全局环境变量,它只对子进程有效。该全局环境变量在父进程中依然有效:
                    

     4、在你登录Linux系统启动一个bash shell时,默认情况下bash在几个文件中查找命令。这些文件称作为启动文件。bash检查的启动文件取决于你启动bash shell的方式。启动bash shell有3种方式:登录时当做默认的登录shell;作为非登录shell的交互式shell;作为运行脚本的交互shell。

     5、当你在登录Linux系统时,bash shell会作为登录shell启动。登录shell会从4个不同的启动文件里读取命令。下面是bash shell处理这些文件的次序:/etc/profile;$HOME/.bash_profile;
$HOME/.bash_login;$HOME/.profile。在/etc/profile.d/目录是为Linux系统提供了一个集中存放用户登录时要执行的应用专属的启动文件的地方。/etc/profile文件是bash shell的主启动文件。只有你登录了Linux系统,bash就会执行/etc/profile文件中的命令。不同的Linux发行版在这个文件里存放不同的命令。后面的3个启动文件都是同一个作用:提供一个用户专属的启动文件来定义用户专有的环境变量。大多数Linux发行版只用这3个启动文件中的一个。用户可在这些文件中定制自己想要的环境变量和启动脚本。

     6、如果你的bash shell不是登录系统时启动(比如你在命令行提示符小敲入bash启动),你启动的shell称作为交互式shell。如果bash是作为交互式shell启动的,它不会骑访问/etc/profile文件,
而会去用户的HOME目录检查.bashrc是否存在。.bashrc文件有两个作用:一是查看/etc目录下的共用bashrc文件,二是为用户提供了一个定制自己的命令的别名和私有脚本函数的地方。

     7、系统执行shell脚本时用的就是非交互式shell,当启动一个非交互式shell进程时,它会检查环境变量BASH_ENV来查看要执行的启动文件。如果有指定的,shell会执行文件里的命令。

     8、可以用命令alias加-p参数,来查看已有的别名列表。


























  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值