1、 查看环境变量,echo 命令用于在终端输出字符串或变量提取后的值,格式为“echo [字符串 | $变量]”

echo $PATH

/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/java/jdk1.8.0_172/bin:
/home/java/jdk1.8.0_172/jre/bin:/opt/modules/hadoop-3.1.0/bin:/opt/modules/hadoop-3.1.0/sbin:/home/es/.local/bin:/home/es/bin echo $SHELL
/bin/bash echo $JAVA_HOME
/home/java/jdk1.8.0_172

2、如何了解有什么环境变量?env命令显示所有的环境变量,理解为全局变量

env

XDG_SESSION_ID=4
HOSTNAME=bigdata-senior01.home.com
SHELL=/bin/bash
TERM=xterm
HISTSIZE=1000
HADOOP_HOME=/opt/modules/hadoop-3.1.0
SSH_CLIENT=192.168.31.1 52492 22
SSH_TTY=/dev/pts/1
USER=es
JRE_HOME=/home/java/jdk1.8.0_172/jre
。。。

常见的环境变量

HOME  用户的主目录(即家目录)
SHELL 用户在使用的 Shell 解释器名称
HISTSIZE 输出的历史命令记录条数
HISTFILESIZE 保存的历史命令记录条数
MAIL 邮件保存路径
LANG 系统语言、语系名称
RANDOM 生成一个随机数字
PS1 Bash 解释器的提示符
PATH 定义解释器搜索用户执行命令的路径
EDITOR 用户默认的文本编辑器

3、set命令显示所有本地定义的Shell变量

set

BASH=/usr/bin/bash
BASHOPTS=checkwinsize:cmdhist:expand_aliases:extquote:force_fignore:histappend:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath
BASH_ALIASES=()
BASH_ARGC=()
BASH_ARGV=()
BASH_CMDS=()
BASH_LINENO=()
BASH_SOURCE=()
BASH_VERSINFO=([0]="4" [1]="2" [2]="46" [3]="2" [4]="release" [5]="x86_64-redhat-linux-gnu")
BASH_VERSION='4.2.46(2)-release'
CLASS_PATH=.:/home/java/jdk1.8.0_172/lib/dt.jar:/home/java/jdk1.8.0_172/lib/tools.jar:/home/java/jdk1.8.0_172/jre/lib
COLUMNS=113
DIRSTACK=()
DISPLAY=localhost:11.0
EUID=0
GROUPS=()
HADOOP_HOME=/opt/modules/hadoop-3.1.0
...

4、export命令显示当前导出成环境变量的shell变量。

export

declare -x CLASS_PATH=".:/home/java/jdk1.8.0_172/lib/dt.jar:/home/java/jdk1.8.0_172/lib/tools.jar:/home/java/jdk1.8.0_172/jre/lib"
declare -x DISPLAY="localhost:11.0"
declare -x HADOOP_HOME="/opt/modules/hadoop-3.1.0"
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="bigdata-senior01.home.com"
declare -x JAVA_HOME="/home/java/jdk1.8.0_172"
declare -x JRE_HOME="/home/java/jdk1.8.0_172/jre"
declare -x LANG="zh_CN.UTF-8"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="es"
... ...

5、export 用于将shell变量输出为环境变量,或者将shell函数输出为环境变量

设置一个新的环境变量hello

export HELLO="hello centos7"

echo $HELLO

export设置环境变量只对当前登录的用户环境有效,登出后失效,也就是同一个用户从其他终端登录进来也是无效的,export的效力仅及于该次登陆操作。

6、set命令不能够定义新的shell变量。如果要定义新的变量,可以使用declare命令以变量名=值的格式进行定义即可

declare -x将shell变量输出到环境变量
declare -x hello="hello centos7" 然后用set可以看到hello变量 用env | grep hello 查看

7、unset命令删除环境变量

unset hello

env | grep hello 查询不到内容

8、让环境变量永久有效

使用修改 /etc/profile 文件进行环境变量的编辑,是对所有用户有用

vi /etc/profile

#set java environment
JAVA_HOME=/home/java/jdk1.8.0_172
JRE_HOME=/home/java/jdk1.8.0_172/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH #set Hadoop environment
export HADOOP_HOME=/opt/modules/hadoop-3.1.0
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin 修改文件后要想马上生效还要运行source /etc/profile不然只能在下次重进此用户时生效
使用修改.bashrc文件进行环境变量的编辑,只对当前用户有用。
在用户目录下的.bash_profile文件中增加变量
vi /home/es/.bash_profile

CentOS 设置环境变量的更多相关文章

  1. centos 全局环境变量设置

    CentOS的环境变量配置文件体系是一个层级体系,这与其他多用户应用系统配置文件是类似的,有全局的,有用户的,有shell的,另外不同层级有时类似继承关系.下面以PATH变量为例. 1.修改/etc/ ...

  2. CentOS 添加环境变量的三种方法

    在CentOS 系统上安装完 MATLAB 后,为了使用方便,需要将 matlab 命令加到系统命令中,如果在没有添加到环境变量之前,执行“matlab”命令时,则会提示命令不存在的错误,如下所示: ...

  3. centos7 之 设置环境变量(转载)

    设置centos环境变量,可以用export命令,也可以通过修改文件形式实现,本文以lavavel需要设置环境变量为例,将 /root/.config/composer/vendor/bin 路径加到 ...

  4. Linux下设置环境变量

    setenv(set environment variable) 功能说明:查询或显示环境变量. 语 法:setenv [变量名称][变量值] 补充说明:setenv为tsch中查询或设置环境变量的指 ...

  5. Mac 可设置环境变量的位置、查看和添加PATH环境变量

    Mac 启动加载文件位置(可设置环境变量) ------------------------------------------------------- (1)首先要知道你使用的Mac OS X是什 ...

  6. MAC 设置环境变量path的几种方法

    mac 一般使用bash作为默认shell Mac系统的环境变量,加载顺序为:/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.prof ...

  7. C语言的编译过程、安装gcc编译器以及设置环境变量

    以我对C语言编译过程的了解,我用了一点时间画了一个图,提供给大家参考一下,希望有些能对您的问题提上帮助. 前几天刚初步学习了C语言的编译过程,感触挺深的.在C语言中头文件其实起了一个很大的作用. 1. ...

  8. linux命令 - export - 设置环境变量

    linux命令 - export - 设置环境变量 功能说明:设置或显示环境变量. 语 法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供 ...

  9. el captain设置环境变量

    这里说的不是设置变量给bash/shell来用, 而是给程序使用, 比如, chromium自36版以后, 就不再内置google api keys, 官方文档(http://www.chromium ...

随机推荐

  1. mySql——case when else ....demo

    DROP PROCEDURE IF EXISTS Pro_query_change_charge_by_layer_report; CREATE PROCEDURE Pro_query_change_ ...

  2. 3680: 吊打XXX

    3680: 吊打XXX 链接 思路: 模拟退火. 代码: 跑的特别慢... #include<cstdio> #include<algorithm> #include<c ...

  3. JDBC 工具类模板c3p0

    JDBC 工具类模板 package com.itheima.sh.utils; import com.mchange.v2.c3p0.ComboPooledDataSource; import ja ...

  4. Spring缓存穿透问题修复

    本文来自网易云社区. 本剧情纯属真实,犹如雷同实乃缘分. 发生 事情的发生在某天早上,天气怎样反正是忘了,只记得当时监控平台大量的数据库错误报警. 作为后端开发,当看到日志中大量的db连接获取失败,心 ...

  5. HashMap在并发场景下踩过的坑

    本文来自网易云社区 作者:张伟 关于HashMap在并发场景下的问题有很多人,很多公司遇到过!也很多人总结过,我们很多时候都认为这样都坑距离自己很远,自己一定不会掉入这样都坑.可是我们随时都有就遇到了 ...

  6. node-redis使用记录

    redis的高速存取性能让人印象深刻,虽然是分布式存储,但相比本地内存,性能毫不逊色. 之所以能做到这点,是由于redis的“单线程,多路复用IO”,同一时刻只有一个操作在进行. 而且多次建立从red ...

  7. Linux命令应用大词典-第2章 获取帮助

    2.1 help:查看内部Shell命令帮助信息 2.2 man:显示在线手册页 2.3 manpath:查看和设置man手册页的查询路径 2.4 info:阅读info格式的文件 2.5 pinfo ...

  8. UE4蓝图小记

    http://www.element3ds.com/forum.php?mod=viewthread&tid=76930&page=1&authorid=104414 http ...

  9. HDU-1496(哈希表)

    Hash入门第一题 题意: 问题描述 考虑具有以下形式的方程: a * x1 ^ 2 + b * x2 ^ 2 + c * x3 ^ 2 + d * x4 ^ 2 = 0 a,b,c,d是来自区间[- ...

  10. hello word!------为什么开通博客以及自我介绍

    来北京已经一年半的日子了,已经完全成功熟练的成为了另一个我,没有了半年前刚来时的那种焦虑.急躁和格格不入. 回想起来那段时间,大概是我人生中非常重要的时期了,去年那个夏天,只身一人背上行囊踏上了北上的 ...