~/.bashrc、 ~/.bash_profile、~/.profile、 /etc/profile几个配置文件的区别

【Shell脚本进阶】从此彻底搞懂 Linux 环境变量及 Shell 启动文件 /etc/profile 、 ~/.bash_profile 和 ~/.bashrc(建议收藏) 【Shell脚本进阶】从此彻底搞懂 Linux 环境变量及 Shell 启动文件 /etc/profile 、 ~/.bash_profile 和 ~/.bashrc 阅读详情
AI摘要

本文介绍了Linux系统中~/.bashrc、~/.bash_profile、~/.profile、/etc/profile几个配置文件的区别和作用。~/.bashrc用于个人bash shell,每次开新终端加载;~/.bash_profile优先级高,登录时加载;~/.profile适用于所有shell,登录时加载;/etc/profile是系统范围配置,登录时加载。可按需配置环境变量。

在 Linux 系统中,.bashrc, .bash_profile, .profile 和 /etc/profile 这几个文件都有各自的用途,它们在不同的场景下被加载和执行。下面是对这几个文件的区别和作用的详细介绍:

1. ~/.bashrc

  • 描述:这个文件是针对每个用户的 bash shell 的个人配置文件。
  • 加载时机:每当用户打开一个新的交互式终端窗口(或标签页)时,~/.bashrc 就会被读取并执行一次。
  • 用途:通常用于设置个人的环境变量、别名定义、shell 函数以及其他个性化配置。
  • 示例内容:
    # Source global definitions
    if [ -f /etc/bashrc ]; then
      . /etc/bashrc
    fi
    
    # User specific aliases and functions
    alias ll='ls -l'
    

2. ~/.bash_profile

  • 描述:也是针对每个用户的 bash shell 的个人配置文件,但是它的加载优先级高于 ~/.bashrc。
  • 加载时机:在用户登录系统时被读取和执行一次。
  • 用途:通常用于设置全局环境变量,例如 JAVA_HOME、PATH 等。
  • 示例内容:
    # Get the aliases and functions
    if [ -f ~/.bashrc ]; then
      . ~/.bashrc
    fi
    
    # User specific environment and startup programs
    export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
    export PATH=$JAVA_HOME/bin:$PATH
    

3. ~/.profile

  • 描述:针对每个用户的个人配置文件,适用于所有 shell(不仅仅是 bash)。
  • 加载时机:在用户登录系统时被读取和执行一次。
  • 用途:通常用于设置适用于所有 shell 的环境变量。
  • 示例内容:
    # The default umask is set in /etc/profile; for setting the umask
    # for ssh logins, install and configure the libpam-umask package.
    #umask 022
    
    # if running bash
    if [ -n "$BASH_VERSION" ]; then
      # include .bashrc if it exists
      if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
      fi
    fi
    
    # set PATH so it includes user's private bin if it exists
    if [ -d "$HOME/bin" ] ; then
      PATH="$HOME/bin:$PATH"
    fi
    

4. /etc/profile

  • 描述:系统范围内的配置文件,适用于所有用户和所有 shell(不仅仅是 bash)。
  • 加载时机:在用户登录系统时被读取和执行一次。
  • 用途:通常用于设置系统范围内的环境变量和其他全局配置。
  • 示例内容:
    # System-wide .profile file for the Bourne shell (sh(1)) and
    # Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
    
    # If not running interactively, don't do anything
    case $- in
      *i*) ;;
        *) return;;
    esac
    
    # Set PATH for Debian/GNU systems.
    # if "$PATH" is not set up correctly, this can cause problems!
    if [ -z "$PATH" ] || [ "$PATH" = ":/" ]; then
        PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
    fi
    
    # Add an additional PATH entry, if it exists
    if [ -d /usr/games/bonus ]; then
      PATH="$PATH:/usr/games/bonus"
    fi
    
    # set PATH so it includes /usr/local/bin and user's private bin if it exists
    if [ -d "$HOME/bin" ] ; then
      PATH="$HOME/bin:$PATH"
    fi
    

总结

  • ~/.bashrc:适用于每个用户的 bash shell,每次打开新的终端窗口时加载。
  • ~/.bash_profile:适用于每个用户的 bash shell,登录时加载,可以包含 ~/.bashrc。
  • ~/.profile:适用于每个用户的所有 shell,登录时加载。
  • /etc/profile:适用于所有用户的系统范围配置,登录时加载。

根据需求,我们可以选择合适的地方来配置环境变量或其他个性化设置。通常,如果只需要配置 bash shell 的个性化设置,可以使用 ~/.bashrc;如果需要设置全局环境变量,可以使用 ~/.bash_profile 或 ~/.profile。系统级别的配置则放在 /etc/profile 中。

Linux的 .bashrc 有什么作用? 优快云博客. https://blog.csdn.net/Heyyellman/article/details/111565781.-优快云博客. https://blog.csdn.net/Heyyellman/article/details/111565781.每次你启动一个新的终端时,.bashrc文件就会被执行,加载你设置的环境变量,别名,函数等。例如,你可以用别名来缩短常用的命令,用函数来组合多个命令,用bash提示符来显示你想要的信息,甚至用颜色和图标来美化你的终端。 阅读详情

相关推荐

/etc/profile和~/.bash_profile等文件的区别和联系

主要配置文件的理解

数据与算法架构提升之路专栏 1618

什么是.bashrc,有什么用?

.bashrc介绍一、.bashrc 是什么?二、.bashrc 能干什么?三、.bashrc 怎么用?四、.bashrc 没了怎么办? 一、.bashrc 是什么? .bashrc是home目录下的一个shell文件,用于储存用户的个性化设置。在bash每次启动时都会加载.bashrc文件中的内容,并根据内容定制当前bash的配置和环境。 二、.bashrc 能干什么? 1.设定环境路径 PATH="$PATH:$HOME/.local/bin:$HOME" export PATH 2.别名定制 al

Heyyellman的博客 6万+

unity打包流程整理-Windows/Mac/Linux平台

1.Platform(平台)功能: 选择目标构建的目标平台选项PC, Mac & Linux Standalone: 适用于 Windows、Mac 和 Linux 平台2.Target Platform(目标平台)功能: 选择具体的操作系统版本选项Windows: 针对 Windows 操作系统Mac: 针对 macOS 操作系统Linux: 针对 Linux 操作系统3.Architecture(架构)功能: 选择应用程序的目标处理器架构选项x86: 针对 32 位系统。

weixin_42333247的博客 5135

【Linux】什么是.bashrc,以及其使用方法

bashrc,属于一种系统隐藏文件,常常可见于 macOS 或者主流的 Linux 发行版。如果你运行一个基于 Unix 或者类 Unix 的操作系统,bash 很有可能是其默认终端,那么.bashrc就是这个终端里面指令运行的配置脚本。

weixin_57208584的博客 3万+

程序设计二(面向对象)_实训10_复杂类的实现_ArrayList类的实现

第1关:构造函数与析构函数的实现

2401_83406306的博客 819

基于STM32L4XX、HAL库的CH182H1以太网收发器(PHY)驱动程序设计

define PHY_REG_PHYSCR 0x12 // PHY特殊控制寄存器。#define PHY_REG_PHYSTS 0x10 // PHY状态寄存器。#define PHY_REG_PHYIDR 0x11 // PHY标识寄存器。#define PHY_REG_ID1 0x02 // PHY标识符1。#define PHY_REG_ID2 0x03 // PHY标识符2。

zhusl6688的博客 403

Linux下 环境变量/etc/profile、/etc/bashrc、~/.bashrc的区别

①/etc/profile: 该文件登录操作系统时,为每个用户设置环境信息,当用户第一次登录时,该文件被执行。也就是说这个文件对每个shell都有效,用于获取系统的环境信息。可以通过命令source /etc/profile立即生效 $ vi /etc/profile 在里面加入: export PATH="$PATH:/my_new_path" # /etc/profile # ...

a932432866的专栏 3283

6、高通8155座舱平台--摄像头系统

在项目中遇到过,很多从手机转过来的工程师,上来就按手机那套调Camera,结果发现根本跑不通——为什么?我踩过这个坑——一开始想靠软件打时间戳来对齐,结果发现两个sensor的曝光时间不一样,时间戳根本对不上。我记得第一次调AWB时,怎么调颜色都不对,后来发现是BLC的参数没配好——黑电平偏了,后面所有颜色校正都是错的。上层应用说「我要拍张照」,HAL把它翻译成「ISP你给我处理这帧数据,sensor你给我曝光一次」。8155上推荐用camx,它是高通新一代的Camera框架,性能更好,而且支持多路同步。

woailuojp的博客 59

/etc/profile、/etc/bashrc、.bash_profile和.bashrc的区别

最近在弄Linux搭建Spark集群,跟着网上的教程一步一步来,在配置一些文件的时候,分不清它们的区别,便在网上搜了一下,在此记录以便日后复习。1. 简介 /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行,并从/etc/profile.d目录的配置文件中搜集shell的设置。 /etc/bashrc:为每一个运行bash shell的用户执行此

小浣熊的专栏 1144

2024年游戏策划最新面试题及答案

1. **游戏策划**:负责游戏设计和开发的创意和技术过程。2. **主要职责**:设计游戏玩法、故事、角色、世界等。4. **游戏机制**:定义玩家如何与游戏世界互动的规则。13. **引人入胜的角色**:深入的背景故事、个性特征。3. **游戏平衡**:确保游戏公平、有趣且具有挑战性。7. **RPG特点**:角色发展、故事驱动、玩家选择。12. **关卡设计技巧**:挑战性、流动性、视觉引导。11. **游戏关卡设计**:创建游戏世界的不同阶段。5. **游戏循环**:玩家在游戏中重复的行为模式。

guo162308的博客 2320

【Bug已解决】codex: rate limit 429 / Too many requests / RPM exceeded — CodeX CLI 速率限制解决方案

CodeX CLI 触发 429 速率限制(RPM/TPM/并发)的解决方案,含请求间隔、自动重试、便宜模型、Tier 升级与多 Key 轮换。

博客 4890

.bash_profile和.bashrc的区别(如何设置生效)

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc:为每一个运行bash shell的用户执行此文件,当bash shell被打开时,该文件被读取. ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用

Allen的专栏 699

vscode 配置 codeql

vscode 配置 codeql

SHELLCODE_8BIT的博客 1439

bash配置文件的说明:

几个bash配置文件的说明:引用: /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.~/.bash_pro

dongliqiang2006的专栏 742

SAP 系统升级不再惧怕 SPAU 与 SPDD:把修改调整做成可控的工程

SAP系统升级中的SPAU/SPDD处理要点:首先明确SPDD处理数据字典对象,SPAU处理程序对象,核心是解决标准对象变更与历史修改的继承问题。关键原则是优先回归标准版本,减少后续升级负担。操作时应利用版本管理对比差异,批量处理可回退对象,并通过F9多选提高效率。对于提示"当前版本与建议一致"的对象直接回归标准。注意区分新旧SPAU界面功能差异,将Note下载移至SNOTE处理,并确保在SPDD/SPAU之后处理SPAU_ENH。最后,所有调整需记录日志并纳入传输请求,确保可追溯性。遵

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 390

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Linux profile、bashrc、bash_profile的区别

1. /etc/profile为系统的每个用户设置环境信息,当用户第一次登录的时候,该文件被执行,并从/etc/profile.d目录的配置文件中收集shell的设置如果修改了这个文件必须使用source /etc/profile重启才会生效,此修改对每个用户都生效。2. /etc/bashrc如果想对所有的使用bash的用户修改某个配置并在以后打开的bash都生效的话可以修改此文件,修改无需重启,

Heqianqian的博客 539

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

几个bash配置文件的说明

几个bash配置文件的说明: 引用: /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.~/.bash_pr

adderllyer的专栏 1487

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

linux 运行.bashrc,Linux下profile和bashrc区别

1./etc/profile用来设置系统环境参数,比如$PATH. 这里面的环境变量是对系统内所有用户生效的。2./etc/bashrc这个文件设置系统bash shell相关的东西,对系统内所有用户生效。只要用户运行bash命令,那么这里面的东西就在起作用。3.~/.bash_profile用来设置一些环境变量,功能和/etc/profile 类似,但是这个是针对用户来设定的,也就是说,你在/h...

weixin_28939623的博客 503

bash_profile和.bashrc的什么区别

Technorati 标签: linux bash bashrc profile .bash_profile和.bashrc的什么区别 -------------------------------------------------------------------------------- 作者:KornLee 2005-02-03 15:49:57 来自:Linux先生

tge7618291的专栏 1095

.bash_profile和.bashrc的什么区别,linux的几个环境配置文件的区别

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取. ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时

kyrinleo的专栏 633

profiel .bash_profile .bashrc 区别

/etc/profile :此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc : 为每一个运行bash shell的用户执行此文件。当bash shell被打开时,该文件被读取。 ~/.bash_profile :每个用户都可使用该文件输入专用于自己使用的shell信息

技术是条不归路 824

.bash_profile和.bashrc的什么区别

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取. ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录...

Lin's Tech Log 129

.bash_profile和.bashrc的区别

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

ppby2002的专栏 507

Linux中profile、bashrc、bash_profile之间的区别和联系

转自:http://blog.csdn.net/chenchong08/article/details/7833242 /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置. 英文描述为: # /etc/profile # System wide environment

zml19910422的专栏 464
上一篇: Java 8 革命:Lambda 表达式与 Stream 流式编程详解
下一篇: MySQL 实战宝典(五):MySQL 索引——从 B+ 树原理到实战优化
TracyCoder123
博客等级 码龄8年 1万+粉丝 226原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TracyCoder123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值