当前位置:网站首页>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
边栏推荐
- Redis can only cache? Too out!
- The meaning of variables starting with underscores in PHP
- Codes de non - retour à zéro inversés, codes Manchester et codes Manchester différentiels couramment utilisés pour le codage des signaux numériques
- 一个简单LEGv8处理器的Verilog实现【四】【单周期实现基础知识及模块设计讲解】
- IP and long integer interchange
- Excuse me, why is it that there are no consumption messages in redis and they are all piled up in redis? Cerely is used.
- Csma/cd carrier monitoring multipoint access / collision detection protocol
- oracle 触发器实现级联更新
- 搜索框效果的实现【每日一题】
- 【立体匹配论文阅读】【三】INTS
猜你喜欢
2022-7-6 beginner redis (I) download, install and run redis under Linux
最长上升子序列模型 AcWing 482. 合唱队形
最长上升子序列模型 AcWing 1012. 友好城市
AI talent cultivation new ideas, this live broadcast has what you care about
Redis 核心数据结构 & Redis 6 新特性详
UML 顺序图(时序图)
Wired network IP address of VMware shared host
UML sequence diagram (sequence diagram)
Selenium库
"Song of ice and fire" in the eleventh issue of "open source Roundtable" -- how to balance the natural contradiction between open source and security?
随机推荐
GVIM [III] [u vimrc configuration]
用例图
请问,redis没有消费消息,都在redis里堆着是怎么回事?用的是cerely 。
Excuse me, why is it that there are no consumption messages in redis and they are all piled up in redis? Cerely is used.
UML 状态图
Clickhouse (03) how to install and deploy Clickhouse
现在网上开户安全么?那么网上开户选哪个证券公司?
SAKT方法部分介绍
What are the principles for distinguishing the security objectives and implementation methods that cloud computing security expansion requires to focus on?
Verilog implementation of a simple legv8 processor [4] [explanation of basic knowledge and module design of single cycle implementation]
一个简单LEGv8处理器的Verilog实现【四】【单周期实现基础知识及模块设计讲解】
C # switch pages through frame and page
Attribute keywords aliases, calculated, cardinality, ClientName
Data flow diagram, data dictionary
最长上升子序列模型 AcWing 1012. 友好城市
2022-7-6 Leetcode27. Remove the element - I haven't done the problem for a long time. It's such an embarrassing day for double pointers
请问,PTS对数据库压测有好方案么?
requires php ~7.1 -> your PHP version (7.0.18) does not satisfy that requirement
call undefined function openssl_ cipher_ iv_ length
Laravel form builder uses