理解bashrc和profile与用户下命令的自定义

一、引言

一般的 linux 或者 unix 系统下, 都可以通过编辑 bashrc 和 profile 来设置用户的工作环境, 但究竟这两个文件都有什么作用和该如何使用呢?

二、shell类型

首先要弄明白什么是交互式shell和非交互式shell,什么是login shell 和non-login shell。
交互模式:就是shell等待你的输入,并且执行你提交的命令。这种模式被称作交互式是因为shell与用户进行交互。这种模式也是大多数用户非常熟悉的:cd、su、ping等,当完成命令后,shell也终止了。
该模式下的 shell 会去自动执行 /etc/profile 和 ~/.profile 文件, 但不会执行任何的 bashrc 文件, 所以一般再 /etc/profile 或者 ~/.profile 里我们会手动去 source bashrc 文件.
非交互式模式:在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。
该模式下是不会自动去运行任何的 profile 文件

三、相关文件总结

/etc/profile,/etc/bashrc :是系统全局环境变量设定
~/.profile、 ~/.bashrc:用户家目录下的私有环境变量设定

当登入系统时候获得一个shell进程时,首先读入的是全局环境变量设定档/etc/profile,然后根据其内容读取额外的设定的文档,如:/etc/profile.d和/etc/inputrc,最后在根据用户帐号读取~/.bashrc

四、添加用户自定义命令

如果想添加自定义的bash命令,可在 "~/.bashrc"文件中,最后添加如下:

export PATH=$PATH:/home/clzj/桌面/linux_too/Linux_Upgrade_Tool_v1.43/(最后为可执行文件绝对路径)

即可在该用户下使用该命令,但需注意,该命令只能在该用户下使用,如果切换了用户,需要在切换用户的家目录中也如上添加。

发布了11 篇原创文章 · 获赞 8 · 访问量 5080

猜你喜欢

转载自blog.csdn.net/weixin_38019025/article/details/103983109