Shell变量功能(2)
环境变量的功能:
主文件夹的变换
提示符的显示
执行文件查找的路径
想要知道shell环境中有多深默认的环境变量可以用两个命令查阅
env和export
在终端里键入env则出现:
范例一:列出目前 shell 环境下 所有环境发量不其内容。
[root@www ~]# env HOSTNAME=www.vbird.tsai <== 这部主机 主机名
TERM=xterm <== 这个终端机使用 环境是什么类型
SHELL=/bin/bash <== 目前这个环境下,使用 Shell 是哪一个程序?
HISTSIZE=1000 <== 『记录指令的笔数』在 CentOS 默认可记录 1000 笔
USER=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=0 0;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;3 1:*.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: <== 一些颜色显示
MAIL=/var/spool/mail/root <== 这个用户所取用的 mailbox 位置
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin:
/root/bin <== 不在多讲啊!是执行文件 令搜寻路径
INPUTRC=/etc/inputrc <== 不键盘 键功能有关。可以设定特殊按键!
PWD=/root <== 目前用户所在的工作目录 (利用pwd取出!)
LANG=en_US <== 这个和语系有关,底下会再介绍!
HOME=/root <== 这个用户的家目录啊!
_=/bin/env <== 上一次使用的指令的最后一个参数(或指令本身)
相关指令说明:
HOME:
利用cd就可以直接返回到用户家目录里了,其实就是取用了这个变量。
SHELL:
告知我们目前这个环境使用的SHELL是哪支程序,Linux默认的是/bin/bash
HISTSIZE:
与历史命令有关
MAIL:
当我们使用mail指令收信时,系统会读取的邮件信箱档案(mailbox)
PATH:
执行文件搜素的路径,目录和目录以冒号:分隔,由于档案的搜索是依据PATH
变量内的目录查询
LANG:
这个是语系数据,很多讯息都会用到他。举例说:当我们在启动某些perl的程序
语言文件是,他会主动的去分析语系数据文件,如果发现他无法解析的编码语系,
可能会产生错误。一般来说我们中文的编码都是zh_CN.gb2312或者zh_CN.UTF-8(台湾为
zh_TW.Big5 或者zh_TW.UTF-8),这四个编码不容易被解译出来,所以有时候需要
修订一下语系。
RANDOM:
随机数变量,大多数的dirstributions都会有随机数生成器,也就是/dev/random
可以通过$RANDOM来随机取得随机数值。在BASH的环境下,这个RANDOM变量的内容介于0-32767之间。
echo $RANDOM
系统会主动取出一个介于0-32767的数值
如果你想要得到0-9的数的话,就可以declear声明数值类型
[root@www ~]# declare -i number=$RANDOM*10/32768 ; echo $number