最近在看shell的一些内容,以前总是搞不清楚一些配置文件的含义,这次上网查了下,先学习下
1./etc/profile和用户主目录下的配置文件
用户登陆到shell时,shell会执行一系列初始化动作,其中就包括读取配置文件,然后根据配置文件设置环境信息。这样用户就可以很方便地在环境中加入自定义信息,如设置环境变量。事实上,登陆shell会读两配置个文件,/etc/profile文件和用户主目录下的配置文件,这两个文件的区别是:
/etc/profile文件:为系统的每个用户设置环境信息,对所有用户的登陆shell都有效;
用户主目录下的配置文件:为当前用户设置环境信息,仅对当前用户的登陆shell有效;
2.用户主目录下有哪些配置文件
用户主目录下的配置文件有.profile, .login, .bash_profile, .bash_login。不同的登陆SHELL用不同的配置文件,具体为:
Bourne Shell (sh):使用.profile文件;
Korn Shell (ksh):兼容sh,也使用.profile文件;
C Shell (csh):使用.login文件;
Bourne Again Shell(bash):bash被设计成兼容sh,ksh,并有csh的特征, 所以会在用户的主目录下依次查找.bash_profile,.bash_login,.profile文件,并用找到的第一个作为自己的配置文件;
bash查找这些同义文件的好处是,如果曾经用过Bourne shell,你可以保留它,如果需要加入特定的bash命令,可以将它们放入.bash_profile中并在后面跟一条命令source .profile。登录时,所有特定的bash命令均被执行,然后bash将会调用.profile,执行其保留的命令。即使决定仍使用Bourne shell,也不必修改已存在的文件,类似的方法也可以用于.bash_login和C shell的.login,但由于这些shell基本语法的差异性,这不是一个好主意。
需要注意的是:经过编辑的.bash_profile文件,直到退出再次登录,该文件被重新读取后,.bash_profile中的内容才会生效。
2.Bash的其他几个配置文件
Bash的设计考虑的场景比较齐全,所以除了上面的几个配置文件外,还有如下几个配置文件:
~/.bash_logout文件:每次登录shell退出时文件.bash_logout被读取并执行,它提供了定制用户环境的功能,如删除帐号内的临时文件或记录登录系统所花的时间;
~/.bashrc文件:.bash_profile只被登录shell读取并执行,如果你在命令行上键入bash启动一个新的shell,这个新shell读取的是.bashrc而不是.bash_profile,将登录shell和运行一个子shell所需的配置文件分开可以获得非常灵的配置策略,从而满足不同的应用场景;
/etc/bashrc文件:和~/.bashrc的含义一样,只不过适用于所有的用户;
事实上,很多情况下某些配置文件是一样的,比如.bashrc和.bash_profile,这时只需要在一个配置文件中执行另外一个配置文件就可以了,例如source .bashrc,或 ..bashrc(匿名命令)。
分享到:
相关推荐
".bash_profile和.bashrc的区别" ....bash_profile和.bashrc文件都是非常重要的配置文件,它们之间存在着很大的区别,但它们都是 Bash shell 的配置文件,用于设置用户的shell信息和bash shell的配置信息。
其中.bash_profile是最重要的一个配置文件,它在用户每次登录系统时被读取,里面的所有命令都会被bash执行。.profile(由Bourne Shell和Korn Shell使用)和.login(由C Shell使用)两个文件是.bash_profile的同义词,...
该文件是bash shell的配置文件之一,在用户登录时被读取执行,用于设置用户的特定环境。修改.bash_profile文件主要是为了让oracle用户在登录后能够直接使用Oracle数据库相关的命令和环境变量。 .bash_profile文件中...
本文将深入探讨Linux环境下四个重要的配置文件:`/etc/profile`、`/etc/bashrc`(或`/etc/bash.bashrc`)、`~/.bash_profile`以及`~/.bashrc`。 #### 1. `/etc/profile` - **概述**:这是一个全局性的配置文件,对...
在Linux系统中,环境变量和命令的设置是通过配置文件来完成的,这些配置文件包括`/etc/profile`, `/etc/bashrc`, `~/.bash_profile`以及`~/.bashrc`。理解它们的区别和联系对于优化用户环境和个性化设置非常重要。 ...
source ~/.bash_profile、~/.bashrc等脚本文件就ok了 以上所述是小编给大家介绍的mac 安装omyzsh后不执行~/.bash_profile、~/.bashrc的完美解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会...
`bashrc`和`.bash_profile`是两个非常重要的配置文件,它们直接影响着用户的Bash会话体验。本文将深入探讨这两个文件以及如何通过它们实现彩色输出,让你的Bash终端变得更加丰富多彩。 首先,`.bashrc`文件是每个...
Linux 操作系统中,有两个重要的配置文件:`.bash_profile` 和 `.bashrc`。这两个文件都是 Bash shell 的配置文件,但它们的作用和应用场景却有所不同。本文将详细分析这两个文件的区别和作用。 /etc/profile 首先...
`bashprofile`和`bashrc`是两个主要的bash shell配置文件,它们定义了用户登录和使用bash shell时的环境。接下来,我们将深入探讨这两个文件的作用、区别以及它们如何协同工作。 1. `/etc/profile` `/etc/profile`...
首先,`.bashrc`是Bash shell的启动配置文件,它定义了命令行界面的行为和环境变量。当用户以非登录方式启动一个新的shell时,比如打开一个新的终端窗口,`.bashrc`会被执行。通过修改此文件,你可以设置别名、...
首先,`/etc/profile`文件是全局环境变量配置文件,适用于所有用户。当你在此文件中添加新的路径或者设置环境变量,比如`export PATH=$PATH:/usr/local/mysql/bin`,这将确保所有登录系统的用户都能够访问指定路径下...
5. **加载其他配置**:`source ~/.bash_profile` 可以在.bashrc中加载其他配置文件,保持配置一致性。 6. **历史记录设置**:`HISTSIZE=1000` 设置命令历史记录的条目数量,`HISTCONTROL=ignoreboth` 避免重复和空...
4. **设置环境变量**:安装完成后,为了正常使用NCL,需要在`.bashrc`或`.bash_profile`文件中添加环境变量,例如`export PATH=$PATH:/usr/local/ncl/6.3.0/bin`,确保NCL的可执行文件能被系统找到。 NCL_Ncarg的...
在Linux系统的.bashrc或.bash_profile文件中添加HBase的环境变量配置,如: bash export HBASE_HOME=/opt/module/hbase-x.x.x # x.x.x为下载的HBase版本号 export PATH=$PATH:$HBASE_HOME/bin 执行source ~/.bashrc...
在用户的.bashrc或.bash_profile文件中添加如下行(将"/path/to/TongWeb"替换为实际路径): ```bash export PATH=$PATH:/path/to/TongWeb/bin ``` 3. **安装TongWeb**:进入TongWeb的安装目录,执行安装脚本:...
在使用 Bash 时,bashrc 文件是 Bash Shell 的配置文件,用于存储用户的个性化设置。但是,当我们切换到 Zsh 时,bashrc 文件将失效,导致原先的配置无法生效。这种情况下,我们需要找到一种方法来恢复 bashrc 文件...
`.bashrc`和`.bash_profile`是两个非常重要的配置文件,它们用于定制Bash shell的行为。本文将深入探讨这两个文件的功能,以及如何通过它们实现彩色输出,提升命令行的可读性和用户体验。 首先,`.bashrc`文件是每...
标题中的“linux bash配置文件”指的就是用户的Bash初始化脚本,通常位于`~/.bashrc`或`~/.bash_profile`路径下。这两个文件都是Bash启动时读取的,但它们各有侧重:`.bashrc`适用于交互式登录会话和非交互式终端,...