《Linux系统》之"深入浅出"(四)shell环境配置文件和数据流重定向

一、shell环境配置

用户在登录Linux系统后,就会启动bash进行作业。而在bash启动后,会读取与之相关的一些环境配置文件,从而搭建出bash自己的操作环境。还记得我们之前使用的命令别名和自定义的变量吗?这些数据一旦注销/关闭bash后,就会失效。所以,如果你想永久保留你的设置,那么就需要将这些设定写入配置文件中才可以。

这些配置文件,我们可以将他们分为两大类:一类为系统配置文件,一类为用户配置文件。

  • /etc/profile :这个文件是整个系统的配置文件,能不修改就尽量不修改
  • ~/.bash_profile(~/.bash_login 、 ~/.profile )和~/.bashrc:这样的文件是用户的配置文件,在这里可以进行你的设定

1、login shell与non-login shell

shell环境,可根据你取得bash的登录流程来分为:login shell环境和non-login shell环境。

login shell:通过一个完整的登录流程所取得的bash,就处于login shell环境。如 通过终端机tty1~tty6登录,你要输入用户的账号和密码,这种流程取得的bash,就是 【login shell】

non-login shell:  不需要经过登录的行为而取得的bash,就处于non-login shell环境。如在图形化操作界面启动终端,这个终端不需要输入账号和密码,这个bash所处的环境就是non-login shell。或者在终端里,再次使用bash指令而进入的bash子程序,也是属于non-login shell。

为什么要这样分类呢?因为这两种取得bash的情况,他们读取的配置文件各不相同。

2、login shell 会读取什么配置文件吧

login shell 会先读取/etc/profile这个系统配置文件,在这个配置文件中,存在许多系统级别的变量,因此,如果你想修改所有者的工作环境,那就应该在这个文件中进行修改(但是,改之前一定要慎重哦)。常见变量如下:

PATH:会根据UID决定PATH变量中是否要含有sbin的超级管理命令的目录
MAIL:依据账号设定使用者的mailbox到/var/spool/mail/账号名。
USER:根据用户的账号设定变量内容
HOSTNAME:依据主机的hostname指令决定此变量的值
HISTSIZE:历史记录命令的条数,默认是1000条
UMASK:权限的掩码,root为022,一般用户为002

除了这些环境变量的设置外,此配置文件还会读取/etc/profile.d/目录下的众多*.sh文件。这些文件同样有很重要的数据设定。而其中的/etc/profile.d/lang.sh会读取/etc/locate.conf等文件,/etc/profile.d/bash_completion.sh会读取/usr/share/bash_completion/completions/目录下的众多文件等等。总之,/etc/profile这个系统配置文件会读取很多文件,帮助完善bash的工作环境。

当bash读取了系统环境的相关配置信息后,接下来就会读取用户的个人配置文件~/.bash_profile(有的版本叫.bash_login或者叫.profile)。 我们来看看这个文件:

[hyxy@master ~]$ cat .bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then            <==根据判断,是否要读取.bashrc文件
	. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin                 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值