aix java 环境变量_AIX环境变量简介及使用

环境变量是操作系统环境设置的变量,适用于整个系统的用户进程;

环境变量可以在命令中设置,但是用户注销的时候将会丢失这些设置值;

若要重复适用,则最好在.profile中定义;环境变量的使用与本地变量的使用方法相同,

但是在使用之前,必须用export命令导出。

1.设置环境变量

同一行键入2个语句,使用分号隔开

VARIABLE-NAME=value; export VARIABLE-NAME

也可以分行写:

VARIABLE-NAME=value

export VARIABLE-NAME

2.查看环境变量:env

3.清除环境变量:unset VARIABLE-NAME

4.嵌入shell变量

4.1 CDPATH:此变量保留了一些目录信息,用冒号“:”隔开。

如果设置了此变量,在cd一个目录的时候,shell会先去查找此变量保存的值;

如果此变量中保存了cd切换的目录,则切换到该目录下。

4.2 EXINIT:此变量保存使用vi编辑器的初始化选项,如显示行号,并在第10个空格加入tab键,

命令为:EXINIT='set nu tab=10';export EXINIT

4.3 HOME:HOME目录,通常用于定位passwd文件的倒数第2列,指定用户登录后进入自己的目录,

在这个目录下保存用户自己的文件信息。当输入:cd $HOME时,就切换到用户的跟目录下。

4.4 IFS:用于shell指定的缺省域分隔符;缺省域分隔符可以为:空格、新行、tab键。

4.5 LOGNAME:保存登录名

4.6 MAIL:保存邮箱路径名,默认为/var/spool/mail/。

4.7 MAILCHECK:默认为没60s检查新邮件,可以设置为其他时间,如180s。

4.8 MAILPATH:存储多个用户的邮箱路径,设置此变量将覆盖MAIL的值。

4.9 PATH:保存进行命令或脚本查找的目录顺序,对这些目录的排序很重要,

因为这关系到执行命令查询时间问题;通常我们都是先从用户根目录下去查询,在到其他目录下。

4.10 PS1:基本提示符,超级用户为#,普通用户可以任意设置。

4.11 PS2:附属提示符,默认“>”,用于执行多行命令或超过一行的一个命令。

4.12 SHELL:保存默认shell,通常在/etc/passwd中设置,可以进行修改,使用其他shell。

4.13 TERMINFO:终端初始化变量保存终端配置文件的位置。

4.14 TERM:保存终端类型,设置TERM是应用获知终端对屏幕和键盘响应的控制序列类型,

如vt100、vt200等

4.15 TZ:保存时区值,只有系统管理员才可以更改此设置。

5.其他环境变量

还有其他一些预留的环境变量,其他系统或命令行应用将用到他们,如:

5.1 EDITOR:设置编辑器,这个比较常用。

5.2 PWD:保存当前工作路径名。

5.3 PAGER:保存屏幕翻页命令,如pg、more

5.4 MANPATH:保存系统上man文件的目录,各个目录之间用“:”隔开。

5.5 LPDEST或PRINTER:保存默认打印机名,用于打印作业是指定打印机名。

6.set命令

在$HOME.profile文件中,设置环境变量时,除了export可以导出之外,还有set -a命令,

可以指明所有变量直接被导出;不过别在/etc/profile中设置,在自己的$HOME.profile中设置。

下面是一个shell脚本的实例

在father.sh脚本中,调用child.sh脚本,并修改father.sh中的变量值,如下:

pg father.sh

# father script

echo "This is the father"

SMART_PHONE="iPhone 5"

echo "I have the phone:$SMART_PHONE"

# call the child script

sh child.sh

echo "The phone father owned is:$SMART_PHONE"

pg child.sh

# child

echo "called from father..i am the child"

echo "phone is:${SMART_PHONE:-unknow}"

SMART_PHONE="Meizu MX2"

echo "changing SMART_PHONE to:$SMART_PHONE"

执行脚本:

sh father.sh

This is the father

I have the phone:iPhone 5

called from father..i am the child

phone is:unknow

changing SMART_PHONE to:Meizu MX2

The phone father owned is:iPhone 5

可以看到,在子进程中并不认识父进程中的变量,这是因为我们没在父进程中导出变量值。

修改father.sh脚本:

pg father.sh

# father script

echo "This is the father"

SMART_PHONE="iPhone 5"

echo "I have the phone:$SMART_PHONE"

# call the child script

export SMART_PHONE

sh child.sh

echo "The phone father owned is:$SMART_PHONE"

现在执行修改后的脚本,子进程认识父进程传递过来的变量了:

sh father.sh

This is the father

I have the phone:iPhone 5

called from father..i am the child

phone is:iPhone 5

changing SMART_PHONE to:Meizu MX2

The phone father owned is:iPhone 5--the end--

作者:BOBO12082119 发表于2012-12-23 20:44:40 原文链接

阅读:0 评论:0 查看评论

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值