1.环境变量的功能
1.1 查看环境变量
env
export
env是environmet的简写,列出所有的环境变量,export也是如此,但是它还有其他的功能。
HOME: 代表用户的主文件夹,利用cd命令可以直接回到用户主文件夹下。
SHELL:目前这个环境使用的shell是哪个程序(/bin/bash)。
HISTSIZE:这个和历史有关,指记录的历史指令条数。
MAIL:邮箱。
PATH:执行文件的查找路径,目录与目录之间使用:隔开。
LANG:语系数据。
1.2 用set查看所有变量,包括环境变量和自定义变量。
set
1.3 PS1指示符
这个变量可以到用户根目录下查看
cd
vim .bashrc
这个东西就是我们的“命令指示符”,当我们每次按下回车键去执行某个命令后,最后要再次显示的是一些特殊符号,这些符号可以显示不同的信息。
1.4$
关于本shell的PID
$
本身也是一个变量。
echo $$
显示本shell的PID号码。
1.5 ?(关于上个执行命令的回传码)
当我们执行某些命令时,这些命令都会回传一个执行后的代码,一般来说,如果执行成功该命令,则会回传一个0值,如果执行失败,一般是以非0的数值来替代。
echo $?
1.6 export:自定义变量转换为环境变量
当登录Linux并取得一个bash之后,你的bash就是一个独立的进程,被称为PID的就是。接下来在这个bash下面所执行的任何命令都是由这个bash衍生出来的,那些被执行的命令就被称为子进程。然而子进程只会继承父进程的环境变量,不会继承父进程的自定义变量。
如果想要子进程继承父进程的自定义变量
export 变量名称
子进程未继承父进程的自定义变量实例
[lirong@lr ~/Train/shellscript]$ myname=LR //定义变量
[lirong@lr ~/Train/shellscript]$ echo $myname //显示变量
LR
[lirong@lr ~/Train/shellscript]$ echo $$ //当前进程PID
6367
[lirong@lr ~/Train/shellscript]$ bash //创建子进程shell
[lirong@lr ~/Train/shellscript]$ echo $$ //显示子进程PID
6956
[lirong@lr ~/Train/shellscript]$ echo $myname //子进程未继承变量
[lirong@lr ~/Train/shellscript]$
使用export让子进程继承父进程的自定义变量
[lirong@lr ~/Train/shellscript]$ myname=LR
[lirong@lr ~/Train/shellscript]$ echo $myname
LR
[lirong@lr ~/Train/shellscript]$ echo $$
6956
[lirong@lr ~/Train/shellscript]$ export myname //传递自定义变量给子进程
[lirong@lr ~/Train/shellscript]$ bash
[lirong@lr ~/Train/shellscript]$ echo $$
7007
[lirong@lr ~/Train/shellscript]$ echo $myname //子进程继承了该变量
LR
[lirong@lr ~/Train/shellscript]$
2017-11-22-LR 鸟哥的私房菜