⑴ linux环境下的环境变量PATH是什么
首先可以在命令行输入:$PATH看看能看到什么,那是一些bash路径,意思就是往PATH里面新增一个/opt/bin的路径,如果不加:$PATH的话,就表示直接把PATH赋值为/opt/bin啦,这样你其他的老路径就丢失了。
linux下查看和添加PATH环境变量
$PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接。
编辑 PATH 声明,其格式为:
PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>
可以自己加上指定的路径,中间用冒号隔开。环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:$ source .bash_profile
需要注意的是,最好不要把当前路径 “./” 放到 PATH 里,这样可能会受到意想不到的攻击。完成后,可以通过 $ echo $PATH 查看当前的搜索路径。这样定制后,就可以避免频繁的启动位于 shell 搜索的路径之外的程序了。
可用 export 命令查看PATH值
[root@localhost u-boot-sh4]# export
declare -x CVS_RSH="ssh"
declare -x DISPLAY=":0.0"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="localhost"
declare -x INPUTRC="/etc/inputrc"
declare -x LANG="zh_CN.UTF-8"
declare -x LESSOPEN="|/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x 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:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD="/root"
declare -xPATH="/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"
declare -x PWD="/opt/STM/STLinux-2.3/devkit/sources/u-boot/u-boot-sh4"
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_ASKPASS="/usr/libexec/openssh/gnome-ssh-askpass"
declare -x TERM="xterm"
declare -x USER="root"
declare -x XAUTHORITY="/root/.xauthkSzH7b"
单独查看PATH环境变量,可用:
[root@localhost u-boot-sh4]#echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
添加PATH环境变量,可用:
[root@localhost u-boot-sh4]#export PATH=/opt/STM/STLinux-2.3/devkit/sh4/bin:$PATH
再次查看:
[root@localhost u-boot-sh4]# echo $PATH
/opt/STM/STLinux-2.3/devkit/sh4/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
说明添加PATH成功。
上述方法的PATH 在终端关闭 后就会消失。所以还是建议通过编辑/etc/profile来改PATH,也可以改家目录下的.bashrc(即:~/.bashrc)。
第二种方法:
# vim /etc/profile
在文档最后,添加:
export PATH="/opt/STM/STLinux-2.3/devkit/sh4/bin:$PATH"
保存,退出,然后运行:
#source /etc/profile
不报错则成功。
⑵ linux 环境变量 PATH LANG
修改的方法有很多,看你修改的范围,可以在用户目录下修改.bash_profile,可以该系统的/etc/profile,前者只对用户有效,后者对所有用户有效
在文件中加上一行,export LANG=****
不同版本配置文件有可能不一样,你的系统如果有这样的文件,就改其中一个就行了
⑶ Linux设置环境变量
linux设置环境变量一、环境变量环境变量是包含关于系统及当前登录用户的环境信息的字符串,一些软件程序使用此信息确定在何处放置文件(如临时文件)。设置环境变量说白了就是指定一个软件的路径。环境变量是包含诸如驱动器、路径或文件名之类的字符串。环境变量控制着多种程序的行为。例如,TEMP
环境变量指定程序放置临时文件的位置。
path,
是告诉系统,
当要求系统运行一个程序而没有告诉它程序所在的完整路径时,
系统除了在当前目录下面寻找此程序外,
还应到那些目录下去找
www.dnjsb.com
【权限问题】任何用户都可以添加、修改或删除用户的环境变量。但是,只有管理员才能添加、修改或删除系统环境变量。linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。为了使每个用户默认的环境相同,需要设置一组环境变量。通过修改相应的系统环境变量,对自己的运行环境进行定制。注:linux的环境变量名称一般使用大写字母。二、环境变量的设置1.显示环境变量本例使用echo显示常见的变量HOME$
echo
$HOME/home/kevin2.设置新的环境变量$
export
MYNAME=my
name
is
kevin
www.dnjsb.com
$
echo
$
MYNAMEmy
name
is
Kevin3.修改已存在的环境变量接上个示例$
MYNAME=change
name
to
jack$
echo
$MYNAMEchange
name
to
jack4.显示所有的环境变量$
env
www.dnjsb.com
HOSTNAME=localhost.localdomainSHELL=/bin/bashTERM=xtermHISTSIZE=1000SSH_CLIENT=192.168.136.151
1740
22QTDIR=/usr/lib/qt-3.1SSH_TTY=/dev/pts/05.显示所有本地定义的Shell变量$
setBASH=/bin/bashBASH_ENV=/root/.bashrc
www.dnjsb.com
6.使用unset命令来清除环境变量$
export
TEMP_KEVIN=kevin
#增加一个环境变量TEMP_KEVIN$
env
|
grep
TEMP_KEVIN
#查看环境变量TEMP_KEVIN是否生效(存在即生效)TEMP_KEVIN=kevin
#证明环境变量TEMP_KEVIN已经存在$
unset
TEMP_KEVIN
#删除环境变量TEMP_KEVIN$
env
|
grep
TEMP_KEVIN
#查看环境变量TEMP_KEVIN是否被删除,没有输出显示,证明TEMP_KEVIN被清除了。7.使用readonly命令设置只读变量注:如果使用了readonly命令的话,变量就不可以被修改或清除了。$
export
TEMP_KEVIN
=kevin
#增加一个环境变量TEMP_KEVIN$
readonly
TEMP_KEVIN
#将环境变量TEMP_KEVIN设为只读$
env
|
grep
TEMP_KEVIN
#查看环境变量TEMP_KEVIN是否生效TEMP_KEVIN=kevin
#证明环境变量TEMP_KEVIN已经存在
www.dnjsb.com
$
unset
TEMP_KEVIN
#会提示此变量只读不能被删除-bash:
unset:
TEMP_KEVIN:
cannot
unset:
readonly
variable$
TEMP_KEVIN
=tom
#修改变量值为tom会提示此变量只读不能被修改-bash:
TEMP_KEVIN:
readonly
variable8.通过修改环境变量定义文件来修改环境变量。需要注意的是,一般情况下,仅修改普通用户环境变量配置文件,避免修改根用户的环境定义文件,因为那样可能会造成潜在的危险。$
cd
~
#到用户根目录下$
ls
-a
#查看所有文件,包含隐藏的文件$
vi
.bash_profile
#修改用户环境变量文件例如:编辑你的PATH声明,其格式为:
www.dnjsb.com
PATH=$PATH:<PATH
1>:<PATH
2>:<PATH
3>:------:<PATH
N>你可以自己加上指定的路径,中间用冒号隔开。环境变量更改后,在用户下次登陆时生效。如果想立刻生效,则可执行下面的语句:$source
.bash_profile需要注意的是,最好不要把当前路径./放到PATH里,这样可能会受到意想不到的攻击。完成后,可以通过$
echo
$PATH查看当前的搜索路径。这样定制后,就可以避免频繁的启动位于shell搜索的路径之外的程序了。三、总结常用的:env
显示所有环境变量
⑷ 怎么设置 linux环境变量配置
1、直接用export命令:
#export PATH=$PATH:/opt/au1200_rm/build_tools/bin
查看是否已经设好,可用命令export查看:
[root@localhost bin]# export
declare -x BASH_ENV="/root/.bashrc"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="localhost.localdomain"
declare -x INPUTRC="/etc/inputrc"
⑸ 如何在Linux中修改环境变量PATH
首先,修改Linux的环境变量PATH的语法是这样的(以把/root目录加入PATH环境变量为例):PATH="$PATH":/root,注意Linux的PATH环境变量各个路径之间是用英文冒号分割的(这点和Windows的PATH环境变量有所区别,Windows的PATH环境变量的路径之间用英文分号分割)。
解释:"$PATH"这一部分代表原来的PATH环境变量的内容,因为PATH环境变量是如此重要,对PATH环境变量的修改都是在原PATH的基础上进行添加,所以用"$PATH"导入原PATH的内容,然后后面用英文冒号分割开,再加上/root这个新添加的内容。意思就是在原PATH内容的基础上添加/root这个路径(尽量在原PATH的内容基础上添加,不要去掉原PATH里面的任何内容)。
那对PATH环境变量的修改应该写在那个配置文件中呢?如果想让设置只对当前用户有效,可以在~/.bashrc文件中加入如下两行(还是以添加/root目录为例):
PATH="$PATH":/root
export PATH
添加完成后,如果想让设置马上生效,还需要执行这样一条命令:source ~/.bashrc。(否则你的设置只会在下次登录才生效)
如果想让修改对所有用户都有效,则需要把设置添加到/etc/profile这个配置文件中,添加的内容和在~/.bashrc中的一样。
⑹ 如何判断linux的环境变量在哪里定义
声明一个环境变量:export AA="hello world",相对普通变量而言,只需在前面加上export即可
查看环境变量有两种方法:方法一,使用set命令,这种方法会显示普通变量和环境变量,方法二:使用env命令,这种方法只显示环境变量
删除环境变量:使用unset 变量名即可
查看常见环境变量路径:echo $PATH
添加常用常用环境变量路径: 使用PATH="$PATH":/root/,拼接即可,但是一旦退出当前系统,需要重新定义
如果需要长期使用该路径,需要在配置文件下配置。/etc/profile和/etc/bashrc文件对所有用户有效,~/bashrc和~/.bash_profile只对当前用户有效,下面举一个在linux环境下配置JDK的环境变量的例子
《linux就该这么学》里边有详细的介绍
⑺ Linux U-boot环境变量设置错了 怎么删除修改
按变量的生存周期来划分,Linux变量可分为两类,它们的修改方法如下:
(1)永久的:需要修改配置文件,变量永久生效。
常见的配置文件包括:
(1-1)/etc/profile:对所有用户生效;此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行;并从/etc/profile.d目录的配置文件中搜集shell的设置
例如:编辑/etc/profile文件,添加CLASSPATH变量
# vi /etc/profile
添加一行:
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
修改后需要执行重新登录才能生效,也可以执行命令source /etc/profile来生效
(1-2)/etc/bashrc:对所有用户生效;为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取
编辑方法如上,不再赘述
(1-3)~/.bash_profile:仅会对当前用户有效;每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次
例如:编辑guok用户目录(/home/guok)下的.bash_profile
$ vi /home/guok/.bash.profile
添加如下内容:
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
修改后需要执行重新登录才能生效,也可以执行命令source /etc/profile来生效
(1-4)~/.bashrc:仅会对当前用户有效;该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取
编辑方法如上,不再赘述
另外,~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系
综述,对上述文件修改,添加你需要的变量,在启动一个shell(终端,terminal)时,你所定义的变量均会生效的。
(2)临时的:使用export命令声明即可,变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,在关闭shell后失效,再打开新shell时就没有这个变量,需要使用的话还需要重新定义
在shell的命令行下直接使用[export 变量名=变量值] 定义变量
环境变量的查看
(1)使用echo命令查看单个环境变量。例如:
echo $PATH
(2)使用env查看所有环境变量。例如:
env
(3)使用set查看所有本地定义的环境变量。例如:
set
另外,unset可以删除指定的环境变量。
常用的环境变量
PATH 决定了shell将到哪些目录中寻找命令或程序
HOME 当前用户主目录
HISTSIZE历史记录数
LOGNAME 当前用户的登录名
HOSTNAME指主机的名称
SHELL 当前用户Shell类型
LANGUGE 语言相关的环境变量,多语言可以修改此环境变量
MAIL当前用户的邮件存放目录
PS1基本提示符,对于root用户是#,对于普通用户是$
⑻ linux中加入环境变量怎么删除
参数:-f
代表[变量名称]中为函数名称。
-n
删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
-p
列出所有的shell赋予程序的环境变量
第一个问题:直接在shell中定义的,注销后失效。
定义在/home/username/.profile
只对用户username有效,长期。
定义在/etc/profile
对所有用户有效,长期。
第二个问题:·“后续指令的执行环境中”不是子shell进程,还会是神马,只在父shell中有效,对于子shell来说是透明的。
⑼ 在Linux下如何修改环境变量PATH啊
我想在PATH下加一个/tools/bin的路径用export
PATH=$PATH:/tools/bin后应该是加上去了,但是用
echo
$PATH
还是显示的原来的$PATH变量的值,感觉用export
PATH=$PATH:/tools/bin只是在原来的$PATH变量后加了一个路径到当前的PATH下,但是没有真正修改$PATH的值,怎样改才能
在echo
$PATH
的时候显示当前的PATH值呢?就是说怎么修改变量$PATH?我也试了修改/etc/profile,但是也是只能改PATH的值,但改不了$PATH
变量的值。另外,怎样取消一个环境变量的只读属性?
答:
在你的
~/.bashrc
里面写
export
PATH=$PATH:/tools/bin
注销以后重新登陆就可以。
如果你在某一个终端里面写了上面这句话
那只是在这个终端里面修改了PATH,而关闭了这个终端,PATH还是原来的PATH.
你在/etc/profile里面修改PATH是不合理的,因为这个变量可能会被其他的脚本给修改了。所以最好你在
~/.bashrc里面写。
PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻。用以下命令可以看到PATH的值。
$
echo
$PATH
例如,在主机中,用户yogin的PATH值为:
/opt/kde/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/yogin/bin
其中“:”为分隔符。所以,上面的一串目录可以看成是如下的目录列表。
/opt/kde/bin
/usr/local/bin
/bin:/usr/bin
/usr/X11R6/bin
/home/yogin/bin
同样,也是主机中,用户root的PATH值为:
/opt/kde/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
要修改所有用户的PATH值,您可以以root身份编辑/etc/profile文件,修改其中包含“PATH=”的一行。
例如,您可以使用pico编辑器打开/etc/profile文件。
$
pico
-w
/etc/profile
pico是一个文本编辑器,而-w选项关闭了长行回绕功能。
中国网管论坛bbs.bitsCN.com
如果您想将当前目录加入到PATH中,则将“.”加入PATH中,此时PATH的设定如下:
PATH="$PATH:/usr/X11R6/bin:."
注意:在修改了PATH值或任何环境变量后,都要用export将其输出,新的PATH值才能生效。
⑽ linux 如何删除环境变量
使用unset命令,例如要清除PATH变量,可以如下:
unset PATH