前言

安装完软件必要添加环境变量。指令很少,然而长时间不写就会不自信:我写的对吗?于是百度开始,于是发现又是各有千秋。好吧,好记星不如烂笔头。当然,最重要的是,百度出来的都他妈的是如何添加环境变量,只字不提删除和修改。显然,都是像我一样的外门汉做笔记的,用啥写啥。

增加环境变量

百度出来的都是修改/etc/profile文件,添加export var=value。我也没认真去看linux的指令的书,不过发现一个不错的做法。

/etc/profile.d/下有一堆sh脚本,这些脚本就是系统初始化的环境变量来源。

[root@bogon ~]# ll /etc/profile.d/
总用量 92
-rw-r--r-- 1 root root 771 8月 3 00:15 256term.csh
-rw-r--r-- 1 root root 841 8月 3 00:15 256term.sh
-rw-r--r--. 1 root root 1298 12月 1 2015 abrt-console-notification.sh
-rw-r--r--. 1 root root 660 6月 10 2014 bash_completion.sh
-rw-r--r--. 1 root root 196 4月 29 2015 colorgrep.csh
-rw-r--r--. 1 root root 201 4月 29 2015 colorgrep.sh
-rw-r--r-- 1 root root 1741 2月 16 2016 colorls.csh
-rw-r--r-- 1 root root 1609 2月 16 2016 colorls.sh
-rwxr-xr-x 1 root root 198 9月 19 20:58 java.sh
-rw-r--r-- 1 root root 1706 8月 3 00:15 lang.csh
-rw-r--r-- 1 root root 2703 8月 3 00:15 lang.sh
-rw-r--r--. 1 root root 123 7月 31 2015 less.csh
-rw-r--r--. 1 root root 121 7月 31 2015 less.sh
-rw-r--r--. 1 root root 1157 11月 23 2015 PackageKit.sh
-rw-r--r-- 1 root root 990 6月 10 2014 qt.csh
-rw-r--r-- 1 root root 313 6月 30 2012 qt-graphicssystem.csh
-rw-r--r-- 1 root root 379 6月 13 2012 qt-graphicssystem.sh
-rw-r--r-- 1 root root 919 6月 10 2014 qt.sh
-rw-r--r--. 1 root root 105 6月 10 2014 vim.csh
-rw-r--r--. 1 root root 269 6月 10 2014 vim.sh
-rw-r--r--. 1 root root 1940 11月 22 2015 vte.sh
-rw-r--r--. 1 root root 164 1月 28 2014 which2.csh
-rw-r--r--. 1 root root 169 1月 28 2014 which2.sh

每当系统重启的时候,系统会加载这些文件,进而形成环境变量。那么,我们自然可以在里面增加一个文件,比如java.sh。

#!/bin/bash
JAVA_HOME=/usr/java/jdk1.8.0_102
JRE_HOME=$JAVA_HOME/jre
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME JRE_HOME CLASSPATH

重启即可生效,如果立即生效:

source /etc/profile.d/java.sh

删除和修改

说道删除和修改,首先可以知道unset和export的用法。在当前bash中生效。增加一个环境变量:

export PATH='/usr/bin'

清空一个环境变量:

unset PATH

如果持久化的修改必然要对应的文件中,就是上述的文件,这是对所有用户都生效的。

对单一用户生效(永久的): 用户目录下的.bash_profile文件中增加变量

vim ~/.bash_profile

linux centos中添加删除修改环境变量,设置java环境变量的更多相关文章

  1. 如何管理和记录 SSIS 各个 Task 的开始执行时间和结束时间以及 Task 中添加|删除|修改的记录数

    开篇语 在这篇日志中 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架 我介绍到了包级别的日志管理框架,那么这个主要是针对包这一个层级的 Log 信息,包括包开始执行和结束时间,以 ...

  2. Linux中如何添加/删除FTP用户并设置权限

    在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被设置用户名为test.被限制路径为/home/test 2.创建建用户:在root用户下:   user ...

  3. Linux中如何设置java环境变量

    这里介绍Linux下如何设置java环境变量. 工具/原料 Linux java环境变量 方法/步骤 1 查看java的安装路径   查看java执行路径   配置java环境变量   java的安装 ...

  4. 在linux中添加ftp用户,并设置相应的权限

    在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建用户:在root用户下: useradd ...

  5. 向linux内核中添加外部中断驱动模块

    本文主要介绍外部中断驱动模块的编写,包括:1.linux模块的框架及混杂设备的注册.卸载.操作函数集.2.中断的申请及释放.3.等待队列的使用.4.工作队列的使用.5.定时器的使用.6.向linux内 ...

  6. linux中添加ftp用户,并设置相应的权限

    在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建用户:在root用户下: useradd ...

  7. SQL语句添加删除修改字段及一些表与字段的基本操作

    用SQL语句添加删除修改字段 1.增加字段     alter table docdsp    add dspcode char(200)2.删除字段     ALTER TABLE table_NA ...

  8. JavaScript学习 - 基础(八) - DOM 节点 添加/删除/修改/属性值操作

    html代码: <!--添加/删除/修改 --> <div id="a1"> <button id="a2" onclick=&q ...

  9. linux/Centos下查看和修改网卡Mac地址(ifconfig命令)

    本文转载自http://www.169it.com/article/14360294838474691537.html linux/Centos下查看网卡Mac地址,输入命令: #ifconfig - ...

随机推荐

  1. Hadoop 中利用 mapreduce 读写 mysql 数据

    Hadoop 中利用 mapreduce 读写 mysql 数据   有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...

  2. RecyclerView使用大全

    RecylerView介绍 RecylerView是support-v7包中的新组件,是一个强大的滑动组件,与经典的ListView相比,同样拥有item回收复用的功能,这一点从它的名字recyler ...

  3. Mono为何能跨平台?聊聊CIL(MSIL)

    前言: 其实小匹夫在U3D的开发中一直对U3D的跨平台能力很好奇.到底是什么原理使得U3D可以跨平台呢?后来发现了Mono的作用,并进一步了解到了CIL的存在.所以,作为一个对Unity3D跨平台能力 ...

  4. git亲测命令

    一.Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream bra ...

  5. 有趣的 CSS 像素艺术

    原文地址:https://css-tricks.com/fun-times-css-pixel-art/#article-header-id-4 译者:nzbin 友情提示:由于国内网络的原因,Cod ...

  6. java 利用ManagementFactory获取jvm,os的一些信息--转

    原文地址:http://blog.csdn.net/dream_broken/article/details/49759043 想了解下某个Java项目的运行时jvm的情况,可以使用一些监控工具,比如 ...

  7. “fixed+relative==absolute”——对BFC的再次思考

    好久没写博客了,刚好今天跨年夜没约到什么妹子,在家宅着不如写点东西好了. 需求 昨天晚上,给公司年会做一个移动端的投票页面,遇到一个UI优化的问题: · 正文内容少于一屏时,投票提交按钮固定显示在页面 ...

  8. Android实现TCP断点上传,后台C#服务实现接收

    终端实现大文件上传一直都是比较难的技术,其中涉及到后端与前端的交互,稳定性和流量大小,而且实现原理每个人都有自己的想法,后端主流用的比较多的是Http来实现,因为大多实现过断点下载.但稳定性不能保证, ...

  9. [原] KVM虚拟机网络闪断分析

    背景 公司云平台的机器时常会发生网络闪断,通常在10s-100s之间. 异常情况 VM出现问题时,表现出来的情况是外部监控系统无法访问,猜测可能是由于系统假死,OVS链路问题等等.但是在出现网络问题的 ...

  10. 无法访问org.springframework.core.NestedRuntimeException 找不到org.springframework.core.NestedRuntimeException的类文件

    在学习springAOP时,出现如下异常: 无法访问org.springframework.core.NestedRuntimeException 找不到org.springframework.cor ...