shell中的环境变量设置 您所在的位置:网站首页 shell调用环境变量 shell中的环境变量设置

shell中的环境变量设置

2023-11-04 08:00| 来源: 网络整理| 查看: 265

1. 环境变量

环境变量也称为全局变量,可以在创建他们的Shell及其派生出来的任意子进程Shell中使用,环境变量又可以分为自定义环境变量和bash内置的环境变量,环境变量可以在命令行中设置和创建,用户退出命令行时这些变量值就会丢失,想要永久保存环境变量,可写在文件中

全局文件为/etc/profile,对所有用户有效;用户文件为~/.bash_bash_profile,仅对指定的用户有效

局部变量 普通变量也可成为局部变量,只能在创建它们的Shell函数或Shell脚本中使用,普通变量一般由开发者在开发脚本程序时创建,

变量的查看 查看所有变量 set命令输出所有的变量,包括全局变量和局部变量 1 [root@king ~]# set 2 APACHEERR=hello world 3 BASH=/bin/bash 4 BASH_ALIASES=() 5 BASH_ARGC=() 6 BASH_ARGV=() 7 BASH_CMDS=() 8 BASH_LINENO=() 9 BASH_SOURCE=() 10 BASH_VERSINFO=([0]="4" [1]="1" [2]="2" [3]="1" 11 中间和结尾省略若干代码

2 查看环境变量 env命令只显示全局变量

1 [king@king~]$ env 2 HOSTNAME=king 3 SHELL=/bin/bash 查看所有的变量,函数,整数,和已经导出的变量 declare命令输出所有的变量,函数,整数,和已经导出的变量 set -o命令显示bashShell的所有参数配置信息 自定义环境变量 暂时设定环境变量 如果想设置环境变量,就要给在给变量赋值后或在设置变量时使用export命令,export命令和declare命令的格式: export 变量名=value 变量名=value ; export 变量名 declare - x 变量名=value

eg:定义环境变量并赋值的方法:

export NAME=qzlking declare -x NAME=qzlking NAME=qzlking ; exprot NAME

以上定义环境变量的方法都是暂时的,若想让环境变量永久生效,可以进行如下操作:

2 永久设定环境变量 a)用户环境变量配置

1 [root@king scripts]# ls /root/.bashrc 2 /root/.bashrc 3 [root@king scripts]# ls /root/.bash_profile 4 /root/.bash_profile

说明: 对于用户的环境变量设置,常见的是用户家目录下的.bashrc和.bash_profile

b)全局环境变量的配置

常见的全局环境变量配置文件,/etc/profile;/etc/bashrc;/etc/profile.d这三个配置文件,如果想要在登陆后初始化或者显示加载的内容,只需要把脚本文件放在/etc/profile.d文件下即可(不需要加执行权限)。

在Java环境中,自定义环境变量,通常放在/etc/profile全局环境变量里,

1 export JAVA_HOME=/application/jdk 2 export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib 3 export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin 4 export RESIN_HOME=/application/resin 

查看/取消环境变量 我们通常在工作中要查看一下环境变量中都配置了什么,需要做什么更改,所以我们就有了ehco或printf命令来打印查看环境变量。

$HOME:用户登录时进入的目录 $UID:当前用户的uid( 也就是用户的标识,相当于人的身份证)相当于id -u

1 [king@king ~]$ echo $HOME 2 /home/king 3 [king@king ~]$ echo $UID 4 300

我们可以用unset来消除本地变量和环境变量

1 [king@king ~]$ echo $USER 2 nane 3 [king@king ~]$ unset $USER 4 [king@king ~]$ echo $USER #


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有