2018/05/02 每日一学Linux 之 .bash_profile和.bashrc的区别

最近一直在学习其他,导致博客就疏忽了,很不好(其实就是自己懒了......)。

--

为什么要使用 .bash_profile和.bashrc ?

在平常的使用中,有些文件夹或者命令很长,在执行时需要键入很长的文件路径来找到这个文件。

这样太繁琐了,我应该更记录一些东西来代替我冗余的命令和文件路径

--

.bash_profile和.bashrc 是什么?

是环境变量的意思,所谓环境变量,就是为了简化定义你的文件路径和命令所产生的。

使得在输入时方便快捷的找到你定义好的路径。

--

.bash_profile和.bashrc 有什么区别?

首先引入定义部分:Linux下环境变量配置方法梳理(.bash_profile和.bashrc的区别)

/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.

/etc/bashrc:  为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取.
~/.bash_logout: 当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.

其实有了上面就可以明白了,通俗来说 .bash_profile 和 .bashrc 都是作用于环境变量,只是影响的位置和作用域不同。

--

alias

用来设置指令的别名.

设置 ~/.basrc 可以设置指令的别名,可以简化操作,就像快捷方式一样

alias h-mysql='mysql -ugenee -p83719730 -h172.17.42.1'

这时我在终端输入

vagrant@lims2:~$ h-mysql

mysql>

就等于键入了命令

--

export

设置环境变量

例如

KETTLE_HOME=/etc/nginx
export KETTLE_HOME

可在 env 下看见

2018/05/02 每日一学Linux 之 .bash_profile和.bashrc的区别

--

注意:设置好的环境变量和别名必须执行

source .bashrc

才会生效

--

目前使用到的也只有这么多,其他时候学习的话在回来补充。

上一篇:Linux下环境变量配置方法梳理(.bash_profile和.bashrc的区别)


下一篇:解决Intellij Idea里tomcat启动报The JRE_HOME environment variable is not defined correctly的错误