当前位置:网站首页>Bashrc and profile
Bashrc and profile
2022-07-07 14:14:00 【sinat_ thirty-six million seven hundred and eighty-nine thousan】
Reading guide : Interactive shell And non interactive shell; login shell and non-login shell
Interactive mode is shell Waiting for your input , And execute the order you submitted . This pattern is called interactive because shell Interact with users . This pattern is also familiar to most users : Sign in 、 Execute some orders 、 Sign off . When you sign back ,shell It's over . shell It can also run in another mode :
Non interactive mode . In this mode ,shell Don't interact with you , Instead, read the commands stored in the file , And execute them . When it reads to the end of the file ,shell It's over .
One 、bashrc And profile Are used to save the user's environment information . Let's go through each of these :
/etc/profile( overall situation , For interactive login shell): This file sets the environment information for each user of the system , When the first user logs in , The document is executed . And from /etc/profile.d Directory of configuration files shell Set up .
When the /etc/profile If there is any modification, you must restart the modification to take effect , This change takes effect for every user .
/etc/pro.d:.d Presentation directory , The directory contains some startup scripts required by the application , It includes color 、 Language 、less、vim And which Some additional settings of the command . The reason why these script files can be executed automatically , Because in /etc/profile Use one for Loop statements to call these scripts . These script files are used to set some variables and run some initialization processes .
# for example :
# The default umask is now handled by pam_umask.
# See pam_umask(8) and /etc/login.defs.
if [ -d /etc/profile.d ]; then # Judge /etc/profile.d Is it a directory
for i in /etc/profile.d/*.sh; do # If it's a directory , Go to this directory , Take out each shell Program
if [ -r $i ]; then # If it's time to shell It can be executed
. $i # Then execute it
fi
done
unset i
fi
/etc/bashrc( overall situation , For non interactive non-loginshell): For each run bash shell Of users executing this file . When bash shell When opened , The file is read ( There are some linux In version /etc There is no more bashrc file ).
If you want to use it for all bash Users who modify a configuration and open it later bash You can modify this file if it takes effect , You don't need to restart to modify this file , Reopen a bash Effective .
~/.bash_profile( Interactive 、login Way in bash function ): Each user can use this file to input the shell Information , When the user logs in , The file is only executed once ! By default , He sets some environment variables , Execute the user's .bashrc file .
This file is similar to /etc/profile, It also needs to be restarted to take effect ,/etc/profile Effective for all users ,~/.bash_profile Only valid for the current user .
~/.bashrc( Interactive non-login Way in bash function ): This file contains... For a specific user bash shell Of bash Information , When the user logs in and every time the new shell when , The file is read . Each user has one .bashrc file .
~/.bash_logout: Every time you exit the system ( sign out bash shell) when , Execute the document .
Two 、 similarities and differences :
1、bashrc It will run automatically after the system starts .profile Only after the user logs in .
2、/etc/profile Variable set in etc ( overall situation ) Can work for any user , and ~/.bashrc Variable set in etc ( Local ) Can only inherit /etc/profile The variables in the , They are " Father and son " Relationship .
3、 After setting , It can be used source bashrc The command to update bashrc, You can also use source profile The command to update profile.
3、 ... and 、 Get a... When logging in shell Process time , There are three steps to read the environment profile
1、 The global environment variable profile is read in first /etc/profile, Then read the additional set document according to its content , Such as :/etc/profile.d and /etc/inputrc
2、 Then according to different user accounts , Go to their home directory to read ~/.bash_profile, If this can't be read, read ~/.bash_login, This can't be read before ~/.profile, These three document settings are basically the same , Read has priority
3、 Then read according to the user account ~/.bashrc. as for ~/.profile And ~/.bashrc All of them have the function of personalized customization .
~/.profile You can set the exclusive path of this user , Environmental variables, etc , It can only be executed once when logging in
~/.bashrc It is also a user specific setting document , You can set the path , Command alias , Every time shell script It will be used once for the execution of
边栏推荐
- Excuse me, why is it that there are no consumption messages in redis and they are all piled up in redis? Cerely is used.
- Arm cortex-a9, mcimx6u7cvm08ad processor application
- Co create a collaborative ecosystem of software and hardware: the "Joint submission" of graphcore IPU and Baidu PaddlePaddle appeared in mlperf
- Excuse me, when using Flink SQL sink data to Kafka, the execution is successful, but there is no number in Kafka
- Horizontal of libsgm_ path_ Interpretation of aggregation program
- 带你掌握三层架构(建议收藏)
- 高等數學---第八章多元函數微分學1
- 用例图
- Verilog implementation of a simple legv8 processor [4] [explanation of basic knowledge and module design of single cycle implementation]
- Cesium knows the longitude and latitude of one point and the distance to find the longitude and latitude of another point
猜你喜欢
Parsing of XML files
Best practice | using Tencent cloud AI willingness to audit as the escort of telephone compliance
UML 顺序图(时序图)
SAKT方法部分介绍
gvim【三】【_vimrc配置】
Flask session forged hctf admin
Evolution of customer service hotline of dewu
"Song of ice and fire" in the eleventh issue of "open source Roundtable" -- how to balance the natural contradiction between open source and security?
Redis can only cache? Too out!
供应链供需预估-[时间序列]
随机推荐
PERT图(工程网络图)
wpf dataGrid 实现单行某个数据变化 ui 界面随之响应
Best practice | using Tencent cloud AI willingness to audit as the escort of telephone compliance
Leetcode simple question sharing (20)
Vmware共享主机的有线网络IP地址
请问指南针股票软件可靠吗?交易股票安全吗?
FC连接数据库,一定要使用自定义域名才能在外面访问吗?
Attribute keywords aliases, calculated, cardinality, ClientName
566. Reshaping the matrix
請問,在使用flink sql sink數據到kafka的時候出現執行成功,但是kafka裏面沒有數
[daily training] 648 Word replacement
Laravel form builder uses
VSCode 配置使用 PyLint 语法检查器
请问,如图,pyhon云函数提示使用了 pymysql模块,这个是怎么回事?
【日常训练】648. 单词替换
gvim【三】【_vimrc配置】
THINKPHP框架的优秀开源系统推荐
mysql导入文件出现Data truncated for column ‘xxx’ at row 1的原因
ndk初学习(一)
SAKT方法部分介绍