Linux常见的环境变量
决定了shell将到哪些目录中寻找命令或程序:
$PATH:
具体介绍参见后面详解。
当前用户主目录:
$HOME:
当前用户的邮件存放目录:
$MAIL:
当前用户用的是哪种Shell:
$SHELL:
是指保存历史命令记录的条数
$HISTSIZE:
当前用户的登录名:
$LOGNAME:
主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的:
$HOSTNAME:
和语言相关的环境变量,使用多种语言的用户可以修改此环境变量:
$LANG/LANGUGE:
基本提示符,对于root用户是#,对于普通用户是$,也可以使用一些更复杂的值:
$PS1:
附属提示符,默认是“>”。可以通过修改此环境变量来修改当前的命令符:
$PS2:
比如下列命令会将提示符修改成字符串 “Hello,My NewPrompt :) ” :
PS1=" Hello,My NewPrompt :) "
输入域分隔符:
$IFS:
当shell读取输入时,用来分隔单词的一组字符,它们通常是空格、制表符和换行符。
shell脚本的名字:
$0:
例如,在我的Linux系统中:
$ echo $0
/bin/bash
传递给脚本的参数个数:
$#:
shell脚本的进程号:
$$:
脚本程序通常会用它生成一个唯一的临时文件,如
/tmp/tmfile_$$
例如,在我的Linux系统中:
$ echo $$
31038
表示当前shell进程号为31038
PATH
Bash shell中用export,C shell中用setenv
添加环境PATH变量
$PATH:
决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接。
PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>
你可以自己加上指定的路径,中间用冒号隔开。
环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:
source file_name
单独查看 PATH 环境变量
echo $PATH
添加 PATH 环境变量
export PATH=<PATH i>:$PATH
export PATH=$PATH:<PATH i>
export LD_LIBRARY_PATH=/home/.....(动态库的目录)
但是修改仅对 本次进程 有效
或者在相应的文档最后添上
export PATH=<PATH i>:$PATH
退出时
source file_name
则添加永久有效。
修改环境变量
变更一个目录名 old_name
echo ${path/old_name/new_name}
变更所有目录名 old_name
echo ${path//old_name/new_name}
删除环境变量
echo ${path#/deletion_name:}