Shell变量分为环境变量和自定义变量,这两则的差异在于该变量能否被子进程使用,看下面的一个示 意图:
如果是环境变量,子进程中还可以继续使用,但如果是自定义的变量,子进程里将失效。
用env查看环境变量
常见的环境变量如下:
1)HOME:用户的主目录(cd ~)
2)SHELL:用户的默认shell
3)HISTSIZE:历史记录条数
4)MAIL:邮件信箱文件
5)PATH:执行文件查找路径
6)LANG:语系
用set查看环境变量和自定义变量
比较重要的自定义变量有:
1)PS1:提示符设置
2)$:本shell的PID
3)?:上个执行命令的返回码
用export把自定义变量变成环境变量
上面我们提到过,只有环境变量才能被子进程使用,所以如果你想让某个自定义变量可以被子进程使 用,就使用export命令把它变成环境变量。
变量的显示和取消 - echo unset
echo用于显示变量的值,如:
# echo $SHELL
/bin/bash
unset用于取消变量,如:
# export a=1 # echo $a 1 # unset a # echo $a -- 返回空
语系变量 - locale和LANG
查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/Linux/
我们通过locale命令可以获得当前的语系编码,如下所示:
# locale LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=
在实际使用中,其实只要设置LANG变量即可。默认的语系变量由以下文件定义:
# cat /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb- sun16"
变量的声明 - declare
由declare声明的变量默认是自定义的变量,如果加上-x参数表示定义为环 境变量(同export的效果一样)
对用户的资源限制 - ulimit
执行ulimit -a即可列出当前用户资源使用限制情况:
# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 29823 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 65535 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 10240 cpu time (seconds, -t) unlimited max user processes (-u) 1024 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索变量
, 进程
, 环境
, utf
, size
自定义变量
linux shell 变量赋值、linux shell 变量、linux shell 定义变量、linux shell 环境变量、linux shell 全局变量,以便于您获取更多的相关知识。