Linux:设置环境变量
时间:2020-01-09 10:43:37 来源:igfitidea点击:
Bash shell在Linux下用于各种目的。
如何在Linux操作系统下自定义shell环境变量?
您可以使用Shell变量来存储数据,设置配置选项以及在Linux下自定义Shell环境。
默认shell程序是Linux下的Bash,可用于以下目的:
- 配置shell的外观。
- 根据您使用的终端来设置终端设置。
- 设置搜索路径,例如JAVA_HOME和ORACLE_HOME。
- 根据程序需要设置环境变量。
- 登录或者注销时,运行要运行的命令。
- 设置别名和/或者shell程序功能可自动执行任务以节省打字和时间。
- 更改bash提示。
- 设置shell选项。
您可以使用以下命令查看和配置环境。
显示当前环境
执行以下命令:
$ set
输出示例:
BASH=/bin/bash
BASH_ARGC=()
BASH_ARGV=()
BASH_LINENO=()
BASH_SOURCE=()
BASH_VERSINFO=([0]="3" [1]="2" [2]="25" [3]="1" [4]="release" [5]="x86_64-redhat-linux-gnu")
BASH_VERSION='3.2.25(1)-release'
COLORS=/etc/DIR_COLORS.xterm
COLUMNS=237
CVS_RSH=ssh
DIRSTACK=()
EUID=0
GROUPS=()
G_BROKEN_FILENAMES=1
HISTFILE=/root/.bash_history
HISTFILESIZE=1000
HISTSIZE=1000
HOME=/root
HOSTNAME=server3.www.p.theitroad.local
HOSTTYPE=x86_64
IFS=$' \t\n'
INPUTRC=/etc/inputrc
LANG=en_US.UTF-8
LESSOPEN='|/usr/bin/lesspipe.sh %s'
LINES=64
LOGNAME=root
LS_COLORS='no=00:fi=00:di=00;34:ln=00;36:pi=40;33:so=00;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=00;32:*.cmd=00;32:*.exe=00;32:*.com=00;32:*.btm=00;32:*.bat=00;32:*.sh=00;32:*.csh=00;32:*.tar=00;31:*.tgz=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.zip=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.bz=00;31:*.tz=00;31:*.rpm=00;31:*.cpio=00;31:*.jpg=00;35:*.gif=00;35:*.bmp=00;35:*.xbm=00;35:*.xpm=00;35:*.png=00;35:*.tif=00;35:'
MACHTYPE=x86_64-redhat-linux-gnu
MAIL=/var/spool/mail/root
MAILCHECK=60
OPTERR=1
OPTIND=1
OSTYPE=linux-gnu
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
PIPESTATUS=([0]="0")
PPID=35469
PROMPT_COMMAND='echo -ne "3]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}"; echo -ne "$ echo "$HOME"
7"'
PS1='[\u@\h \W]$ '
PS2='> '
PS4='+ '
PWD=/root
SHELL=/bin/bash
SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
SHLVL=1
SSH_CLIENT='10.1.3.116 44212 22'
SSH_CONNECTION='10.1.3.116 44212 10.10.29.68 22'
SSH_TTY=/dev/pts/0
TERM=xterm
UID=0
USER=root
_=set
consoletype=pty
tmpid=0
genpasswd ()
{
local l=;
[ "$l" == "" ] && l=16;
tr -dc A-Za-z0-9_ < /dev/urandom | head -c ${l} | xargs
}
xrpm ()
{
[ "" != "" ] && ( rpm2cpio "" | cpio -idmv )
}
$PATH定义了命令的搜索路径。
它是一个用冒号分隔的目录列表,shell其中搜索命令。
$PS1定义提示设置。
有关更多信息,请参见所有常用的shell变量列表。
您可以使用printf或者echo命令显示变量的值:
$ printf "%s\n" $HOME
或者
/home/Hyman
输出示例:
export PATH=${PATH}:/home/Hyman/bin
在Linux上设置环境变量
您可以使用export命令修改每个环境或者系统变量。
设置PATH环境变量,使其包含使用perl和shell脚本安装bin目录的目录:
export PATH=${PATH}:${HOME}/bin
或者
export PATH=${PATH}:/usr/java/jdk1.5.0_07/bin
要将JAVA_HOME环境变量设置为安装J2SE SDK应用程序的目录,请执行:
export ANT_HOME=/path/to/ant/dir
export PATH=${PATH}:${ANT_HOME}/bin:${JAVA_HOME}/bin
您可以如下设置多个路径:
$ vi ~/.bash_proflle
如何使所有设置永久化?
使用控制台登录或者使用ssh远程登录时,将执行~/.bash_profile($HOME/.bash_profile)或者~/.prfile文件。
执行以下命令以编辑~/.bash_profile文件,执行:
export PATH=${PATH}:${HOME}/bin
追加$PATH设置,执行:
export DB2INSTANCE=prod_sales
保存并关闭文件。
设置IBM DB2实例名称
执行以下命令:
##代码##关于/etc/profile文件的注释
/etc/profile包含Linux系统范围的环境和启动程序。
所有使用bash,ksh,sh shell的用户都使用它。
通常用于设置PATH变量,用户限制和其他用户设置。
它仅在登录shell程序上运行。
如果要进行大的更改或者特定于应用程序的更改,请使用/etc/profile.d/目录,如此处和此处所述。

