转载:https://blog.csdn.net/sun8112133/article/details/79901527

  首先简单说一下什么是环境变量?环境变量简单的说就是当前环境下的参数或者变量。如果说的专业一点就是指在操作系统中用来指定操作系统的一些参数。   

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

  在Linux系统下配置环境变量最常用的两种方法:
  1、修改家目录下的 .bashrc 文件
  2、修改 /etc/profile 文件
  (注:最后我们会对比两种方法的利弊,大家可以根据自己的情况选用最适合的方法。)

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

 1)先切换回home目录

cd ~

 2)修改 .bashrc 文件

vi .bashrc

 3)在 .bashrc 文件的 最后 加入环境变量

变量名=变量值
...=...
export 变量名 ...
如:JAVA_HOME=/opt/jdk1.8.0_91
  CLASSPATH=.:./bin
  PATH=$JAVA_HOME/bin:$PATH
  export JAVA_HOME CLASSPATH PATH

 4)退出并保存

:wq

 5)立即生效(此时应该在home目录下)

source .bashrc

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

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

 1)修改 /etc/profile 文件

sudo vim /etc/profile

 2)在 /etc/profile 文件的 最后 加入环境变量

变量名=变量值
...=...
export 变量名 ...
如:JAVA_HOME=/opt/jdk1.8.0_91
  CLASSPATH=.:./bin
  PATH=$JAVA_HOME/bin:$PATH
  export JAVA_HOME CLASSPATH PATH

 3)退出并保存

:wq

 4)立即生效

source /etc/profile

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

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

Linux下配置环境变量—— .bashrc 和 /etc/profile的更多相关文章

  1. linux下配置环境变量方式

    linux下配置环境变量有多种方式,下面简述之 方式1.编辑 /etc/profile 文件,增加如下内容 JAVA_HOME=/usr/local/jdk1. export JAVA_HOME PA ...

  2. Linux下配置环境变量的几个方法实例

    场景:一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量.例如我的mips-linux-gcc编译器在“/opt/au1200_rm/build_tools/bin”目录 ...

  3. linux下配置环境变量【原创】

    用户目录下的.profile, 你只需要在用户目录下,创建bin目录,在里面放入你想要执行的可执行文件,就可以在命令行下就可以使用了 # ~/.profile: executed by the com ...

  4. hadoop搭建杂记:Linux下JDK环境变量的设置(三种配置环境变量的方法)

    Linux下JDK环境变量的设置(三种配置环境变量的方法) Linux下JDK环境变量的设置(三种配置环境变量的方法) ①修改/etc/profile文件 如果你的计算机仅仅作为开发使用时推荐使用这种 ...

  5. linux下jdk环境变量配置深度分析----解决环境变量不生效的问题

    1.linux下jdk环境变量配置 是否需要配置环境变量,主要看java -version 显示的版本是否为你期望的版本 1.1 不需要配置环境变量的情况 使用java -version查看,版本显示 ...

  6. linux 下PATH环境变量

    环境变量简介 什么是环境变量呢?简要的说,就是指定一个目录,运行软件的时候,相关的程序将会按照该目录寻找相关文件. 在linux系统下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现&quo ...

  7. 环境变量解释以及在Linux下的环境变量设置

    一.环境变量解释 环境变量是什么? 引用百度百科里面的解释:环境变量是操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息.例如Windows系统中的path环境变量,当要求 ...

  8. Linux系统下配置环境变量

    一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登 ...

  9. Linux下JDK环境变量配置

    JDK官方下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 我的下载路 ...

随机推荐

  1. leetCode中老出现的针对一个int中每个数字的处理

    一个int比如322,我想找happy number就得3平方加2平方再加2平方,怎样找到一个一个的数字,就是322%10,得到2,然后/10,然后再%,就可以依次求得每位上的数字 happy num ...

  2. 3ds max学习笔记(十四)-- (FFD自由变形)

    FFD长方体,FFD圆柱体:   栗子2:通过对长方体进行自由编辑,松弛,和涡轮平滑的操作实现抱枕模型,抱枕表面的凹凸效果,可以通过贴图的方式来实现:

  3. Python 调用图像融合API

    Python 调用图像融合API 本文记录使用Python,调用腾讯AI开放平台的图像融合API.官网给出的Demo用的是PHP,博主作为Python的粉丝,自然想用它来和『最好的』的语言一较高下,顺 ...

  4. PAT Basic 1026

    1026 程序运行时间 (15 分) 要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗 ...

  5. angular学习笔记(2)- 前端开发环境

    angular1学习笔记(2)- 前端开发环境 1.代码编辑工具 2.断点调试工具 3.版本管理工具 4.代码合并和混淆工具 5.依赖管理工具 6.单元测试工具 7.集成测试工具 常见的前端开发工具 ...

  6. poj2456 Aggressive cows(二分查找)

    https://vjudge.net/problem/POJ-2456 二分,从最大长度开始,不断折半试,如果牛全放下了,就是可行,修改下界,否则改上届. #include<iostream&g ...

  7. nginx配置实例

    user root root; worker_processes ; #error_log logs/error.log; #error_log logs/error.log notice; #err ...

  8. Scala详解

    1       快速入门... 4 1.1             分号... 4 1.2             常变量声明... 4 1.2.1         val常量... 4 1.2.2  ...

  9. 巧用watch命令执行循环操作,来解放我们的双手

    有时候我们需要重复执行某个 命令,观察某个文件和某个结果的变化情况.可以写 脚本去实现这些需求,但是有更简单的方法,本文档要介绍的就是watch 命令. 1. 以固定时间反复执行某个命令 root@j ...

  10. springMVC4(7)模型视图方法源代码综合分析

    在完整web开发中.springMVC主要充当了控制层的角色.它接受视图层的请求.获取视图层请求数据,再对数据进行业务逻辑处理.然后封装成视图层须要的模型数据,再将数据导向到jsp等视图界面. 在前面 ...