1. 程式人生 > >CenOS7 設置環境變量

CenOS7 設置環境變量

jre 定義 source tools host 還要 目錄 變量名 lease

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
。。。

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

CenOS7 設置環境變量