Linux下配置环境变量最常用的两种方法—— .bashrc 和 /etc/profile

2024-02-14 13:32

本文主要是介绍Linux下配置环境变量最常用的两种方法—— .bashrc 和 /etc/profile,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢!
本文网址:https://blog.csdn.net/sun8112133/article/details/79901527

  首先简单说一下什么是环境变量环境变量简单的说就是当前环境下的参数或者变量。如果说的专业一点就是指在操作系统中用来指定操作系统的一些参数。
  
  举个我们最常见的环境变量 —— PATH,它的用途就是当用户要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下寻找此程序外,还要到PATH变量中指定的路径去寻找。用户可以通过设置PATH变量,来更好的运行进程。举个常见的例子,在Windows系统中,当我们将JDK安装好后,如果直接在命令提示行(cmd)中输入 java 或 javac 相关的命令时,它会提示:“java不是内部或外部命令,也不是可运行的程序或批处理文件。”这时候我们就需要将JDK中bin目录的路径加入到PATH变量中去。
  
  好了,说了这么多,相信大家对环境变量PATH变量有了一个大体的了解,下面开始进入主题。
  

在Linux系统下配置环境变量最常用的两种方法:

  1、修改家目录下的 .bashrc 文件
  2、修改 /etc/profile 文件

  (注:最后我们会对比两种方法的利弊,大家可以根据自己的情况选用最适合的方法。)




1、修改家目录下的 .bashrc 文件

  .bashrc 文件主要保存着个人的一些个性化设置,如:命令别名、环境变量等。

  1)先切换回家目录
cd ~
  2)修改 .bashrc 文件
vi .bashrc
  3)在 .bashrc 文件的 最后 加入环境变量
变量名=变量值
...=...
export 变量名 ...
如:JAVA_HOME=/opt/jdk1.8.0_91CLASSPATH=.:./binPATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME CLASSPATH PATH
  4)退出并保存
:wq
  5)立即生效(此时应该在家目录下)
source .bashrc

  注:如果不执行 source 命令,则需重启系统才能生效

2、修改 /etc/profile 文件

  /etc/profile 文件是系统为每个用户设置的环境信息,当用户第一次登录时,该文件被执行。此文件的改变会涉及到系统的环境,也就是有关Linux环境变量的东西。

  1)修改 /etc/profile 文件
sudo vi /etc/profile
  2)在 /etc/profile 文件的 最后 加入环境变量
变量名=变量值
...=...
export 变量名 ...
如:JAVA_HOME=/opt/jdk1.8.0_91CLASSPATH=.:./binPATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME CLASSPATH PATH
  3)退出并保存
:wq
  4)立即生效
source /etc/profile

  注:如果不执行 source 命令,则需重启系统才能生效

3、对比两种方法

  修改.bashrc文件,它可以把使用这些环境变量的权限控制到用户级别,只是针对某一个特定的用户。而修改 /etc/profile 文件,它是针对于所有的用户,使所有用户都有权使用这些环境变量。
  相比较起来,第一种方法更加安全,因为如果采用第二种方法,它可能会给系统带来安全性的问题。
  建议:如果你的计算机仅仅作为开发使用,则推荐第二种方法,否则最好使用 第一种方法。

这篇关于Linux下配置环境变量最常用的两种方法—— .bashrc 和 /etc/profile的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/708626

相关文章

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

Spring中配置ContextLoaderListener方式

《Spring中配置ContextLoaderListener方式》:本文主要介绍Spring中配置ContextLoaderListener方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录Spring中配置ContextLoaderLishttp://www.chinasem.cntene

Python获取C++中返回的char*字段的两种思路

《Python获取C++中返回的char*字段的两种思路》有时候需要获取C++函数中返回来的不定长的char*字符串,本文小编为大家找到了两种解决问题的思路,感兴趣的小伙伴可以跟随小编一起学习一下... 有时候需要获取C++函数中返回来的不定长的char*字符串,目前我找到两种解决问题的思路,具体实现如下:

Redis实现延迟任务的三种方法详解

《Redis实现延迟任务的三种方法详解》延迟任务(DelayedTask)是指在未来的某个时间点,执行相应的任务,本文为大家整理了三种常见的实现方法,感兴趣的小伙伴可以参考一下... 目录1.前言2.Redis如何实现延迟任务3.代码实现3.1. 过期键通知事件实现3.2. 使用ZSet实现延迟任务3.3

idea maven编译报错Java heap space的解决方法

《ideamaven编译报错Javaheapspace的解决方法》这篇文章主要为大家详细介绍了ideamaven编译报错Javaheapspace的相关解决方法,文中的示例代码讲解详细,感兴趣的... 目录1.增加 Maven 编译的堆内存2. 增加 IntelliJ IDEA 的堆内存3. 优化 Mave

Java String字符串的常用使用方法

《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

Python 安装和配置flask, flask_cors的图文教程

《Python安装和配置flask,flask_cors的图文教程》:本文主要介绍Python安装和配置flask,flask_cors的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,... 目录一.python安装:二,配置环境变量,三:检查Python安装和环境变量,四:安装flask和flas