①Linux的变量种类
按变量的生存周期来划分,Linux变量可分为两类:
① 永久的:需要修改配置文件,变量永久生效.
① 在/etc/profile文件中添加变量【对所有用户生效(永久的)】
用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是"永久的".
# vi /etc/profile
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
注:修改文件后要想马上生效还要运行# source /etc/profile不然只能在下次重进此用户时生效.
用VI在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是"永久的".
$ vi /home/guok/.bash.profile
添加如下内容:
注:修改文件后要想马上生效还要运行$ source /home/guok/.bash_profile不然只能在下次重进此用户时生效.
在shell的命令行下直接使用[export 变量名=变量值]
定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义.
这个简单点说一下环境变量吧,其实上面是个Shell脚本,其和程序一样是一条条语句执行的,如果有点编程基础的话就好理解了,所以PATH有点像赋值语句,并且是整个个系统都可以读取的静态变量,所以加哪都可以,但别加到判断语句中去,免的有时条件为假,执行不了.
最后,能改变环境变量的其有多个脚本文件,一个是上面说的/etc/profile,这个要这个改sudo vim(或vi) /etc/profile,要最高权限,所以你更改的环境变量对所有的用户都用效,并且这里出错,那是影响所有人的.而每个用户自己又继承了上述的条件,并自己也有配置文件,就是/home/你的用户名/.bashrc文件,这个是你自己的配置脚本,这个是隐藏文件(以.开头),是文件管理器中Ctrl+H,或在命令行中输入ls -a即可看见,这个是你自己的配置,推荐加下这个脚本的最后,而且无需其它的权限,真接vim就行.当然也只有你这个用户用效.改完记得重新登录一下生效.
linux设置环境变量方法:
①.、打开Linux终端命令窗口,输入如下命令:
为了验证是否修改成功可以再继续输入命令eport进行查看.在下图中可以看到成功添加了matlab的环境变量.
① Linux export命令简介
Linux export命令用于设置或显示环境变量.
在shell中执行程序时,shell会提供一组环境变量.export可新增,修改或删除环境变量,供后续执行的程序使用.export的效力仅及于该次登陆操作.
export命令用于将shell变量输出为环境变量,或者将shell函数输出为环境变量.
一个变量创建时,它不会自动地为在它之后创建的shell进程所知.而命令export可以向后面的shell传递变量的值.当一个shell脚本调用并执 行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用.export命令可以用于传递一个或多个变量的值到任何后继脚本.
Linux export命令简介
-f 代表[变量名称]中为函数名称.
-n 删除指定的变量.变量实际上并未删除,只是不会输出到后续指令的执行环境中.
-p 列出所有的shell赋予程序的环境变量.
一个变量创建时,它不会自动地为在它之后创建的shell进程所知.而命令export可以向后面的shell传递变量的值.当一个shell脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用.export命令可以用于传递一个或多个变量的值到任何后继脚本.
Linux怎么设置变量环境
查看是否已经设好,可用命令export查看:
检查:
输出结果:
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="zcwyou"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD
declare -x PWD="/root"
declare -x SELINUX_LEVEL_REQUESTED=""
declare -x SELINUX_ROLE_REQUESTED=""
declare -x SELINUX_USE_CURRENT_RANGE=""
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="xterm"
declare -x USER="root"
declare -x XDG_RUNTIME_DIR="/run/user/0"
留意一下输出的这部分:
可以看到已经包括了刚刚设置的变量路径.
变量路径和环境Linux
export PATH="
在里面加入:
检查结果:
"/bin"、"/sbin"、" /usr/bin"、"/usr/sbin"、"/usr/local/bin"等路径已经在系统环境变量中了,如果可执行文件在这几个标准位置,在终端命令行输入该软件可执行文件的文件名和参数(如果需要参数),回车即可.
PATH为环境变量名,如DVSDK;调用时用
export DVSDK)可以把这个路径加入环境变量,但是退出这个命令行就失效了.要想永久生效,需要把这行添加到环境变量文件里.有两个文件可选:"/etc/profile"和用户主目录下的".bashprofile","/etc/profile"对系统里所有用户都有效,用户主目录下的".bashprofile"只对这个用户有效.exportPATH="
".
注意,与DOS/Window不同,UNIX类系统环境变量中路径名用冒号分隔,不是分号.另外,软件越装越多,环境变量越添越多,为了避免造成混乱,建议所有语句都添加在文件结尾,按软件的安装顺序添加.
本文已同步至博客站:
bash的语法中可以在命令前设置子进程环境变量,它影响且只影响子进程的环境变量,而对父进程没有影响
LANG=C yum grouplist
语句中LANG=C只对yum进程产生影响,运行完成后,用户环境变量LANG仍为原来的
以上就是土嘎嘎小编为大家整理的linux命令加变量相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!