bashrc和profile区别

简介: bashrc和profile区别

转载请注明出处:

  1. 作用与目的:
  • .bashrc:这个文件主要用于配置和自定义用户的终端环境和行为。每次启动新的终端时,.bashrc文件都会被执行,加载用户设置的环境变量、别名、函数等。这使得用户能够根据自己的喜好和需求来定制终端的行为和外观。
  • profile(通常指的是~/.profile/etc/profile):这个文件主要用于在用户登录时设置环境变量和运行命令。对于/etc/profile,它是为系统的每个用户设置环境信息的,并在用户第一次登录时被执行。而~/.profile则允许用户为每个登录会话定制特定的环境设置。
  1. 执行时机:
  • .bashrc:在用户登录时以及每次打开新的shell时都会被读取和执行。这意味着.bashrc中的设置会影响到用户在当前终端会话中的所有操作。
  • profile:主要在用户登录时执行一次。因此,它通常用于设置一些需要在整个登录会话期间保持不变的环境变量和命令。
  1. 内容与应用范围:
  • .bashrc:通常包含与终端环境和行为相关的设置,如别名、函数、提示符样式、颜色等。这些设置主要影响用户在终端中的交互体验。
  • profile:通常用于设置全局的环境变量和命令,这些变量和命令对于用户的整个登录会话都是可见的。此外,/etc/profile还可能从/etc/profile.d/目录中搜集其他的shell设置。
  1. 使用情境:
  • 如果你希望自定义终端的外观和行为,比如修改提示符样式、添加别名等,你应该在.bashrc中进行配置。
  • 如果你需要设置一些全局的环境变量或命令,这些变量和命令需要在整个登录会话期间都可用,你应该在profile文件中进行配置。

  5.bashrc 使用示例

  • 设置环境变量:
# 在.bashrc文件的末尾添加以下行,设置PATH环境变量以包含用户本地bin目录  
export PATH="$PATH:$HOME/.local/bin"
  • 定义别名:
# 使用alias定义别名,将ll作为ls -lha的简写  
alias ll='ls -lha'
  • 加载其他脚本:
# 加载自定义的bash脚本文件  
if [ -f ~/.bash_custom ]; then  
    . ~/.bash_custom  
fi
  • 注意事项:
  • .bashrc文件在用户每次启动新的非登录shell时都会执行。
  • 修改.bashrc后,可以通过执行source ~/.bashrc命令使更改立即生效,或者关闭并重新打开终端。

  6. profile 使用示例

  • 设置全局环境变量:
# 在/etc/profile文件的末尾添加以下行,设置JAVA_HOME环境变量  
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64  
export PATH="$PATH:$JAVA_HOME/bin"
  • 加载用户级启动脚本:
# 在~/.profile文件的末尾添加以下行,加载用户自定义的启动脚本  
if [ -f ~/.profile_custom ]; then  
    . ~/.profile_custom  
fi
  • 定义登录时执行的命令:
# 当用户登录时,显示一条欢迎消息  
echo "Welcome, $USER. Enjoy your session!"
  • 注意事项:
  • profile文件在用户登录时执行一次,并影响整个登录会话。
  • 修改/etc/profile需要系统管理员权限,而修改~/.profile则只需要用户权限。
  • 修改profile文件后,用户可能需要注销并重新登录才能使更改生效。

 

标签: linux

目录
相关文章
|
11月前
|
存储 Java API
简单两步,Spring Boot 写死的定时任务也能动态设置:技术干货分享
【10月更文挑战第4天】在Spring Boot开发中,定时任务通常通过@Scheduled注解来实现,这种方式简单直接,但存在一个显著的限制:任务的执行时间或频率在编译时就已经确定,无法在运行时动态调整。然而,在实际工作中,我们往往需要根据业务需求或外部条件的变化来动态调整定时任务的执行计划。本文将分享一个简单两步的解决方案,让你的Spring Boot应用中的定时任务也能动态设置,从而满足更灵活的业务需求。
764 4
|
搜索推荐 Linux Shell
打造个性化的Linux命令提示符
【8月更文挑战第31天】 在Linux的世界里,命令行是高效工作的利器。本文将引导你如何通过简单的配置,让你的命令提示符更加个性化和实用,从而提升你的工作效率和终端使用体验。我们将从基础的颜色设置开始,逐步深入到复杂的解析符号和脚本编写,最终实现一个既美观又功能丰富的命令提示符。无论你是初学者还是高级用户,都能在这里找到适合你的技巧。让我们一起探索,让命令行不再单调!
|
监控 Java Linux
linux下监控java进程 实现自动重启服务
linux下监控java进程 实现自动重启服务
|
安全 Linux 网络安全
SSH远程登陆配置sshd_config文件详解
ssh是linux远程登录的安全协议,是 C/S 模式的架构,配置文件分为服务器端配置文件 [/etc/ssh/sshd_config] 与客户端配置文件默认配置文件[/etc/ssh/ssh_config] 用户配置文件[~/.ssh/config] sshd_config 是服务端主配置文件。
|
存储 Shell Linux
Linux(27) profile和bashrc的区别
Linux(27) profile和bashrc的区别
136 0
|
弹性计算 缓存 运维
Nginx 安装 SSL 配置 HTTPS 超详细完整教程全过程
说到 Nginx 服务器,最大特点就是轻量级和高性能。通过在几台不同的服务器上进行测试,发现它的并发能力特别强,并且相对而言吃的内存少很多。目前已是绝大多数站长的首选 HTTP 和反向代理服务器。
69850 2
|
缓存 运维 Linux
自动化运维脚本集合
自动化运维脚本集合
144 0
|
Linux Shell
记一次Linux服务器df -Th命令卡住问题的解决过程
记一次Linux服务器df -Th命令卡住问题的解决过程
1139 0
记一次Linux服务器df -Th命令卡住问题的解决过程