概念:在系统里面指定运行环境全局变量。
在main
函数里,函数原型int main(int argc,char* argv[],char* envp[]);
在这个envp
里面就包含着该程序所需要环境变量。
#include<stdio.h>
int main(int argc,char* argv[],char * envp[])
{
int i = 0;
for(;envp[i];i++)
printf("%s\n",envp[i]);
return 0;
}
结果
在每一个程序的里面都有一个环境变量表,环境表里面每个单位都是一个指针,,并且这个表示意NULL结尾的。
常见的环境变量:
PPATH:指定命令的搜索路径
HOME:指定用户的主工作目录
HISTSIZE:保存历史命令个数
SHELL:当前使用的shell,一般是bash
查看环境变量的值:echo $name
将name里面的环境变量的是打印出来
但是在父进程里面定义的环境变量,在子进程里面是无法查看的,相当于在函数里面定义的局部变量。但是使用export 【变量名】这样就可以在子进程里面查看父进程里面定义的环境变量,相当于在函数的外面定义了一个全局变量,即在父进程和子进程里面都可以查看这个环境变量的值。
echo $name : 显示环境变量的值
export name:设置新的环境变量
env :查看当前bash里面的全部环境变量
set :查看本地所有shell环境变量值
unset name:删除环境变量
readonly name:设置只读环境变量
在linux里面定义环境变量一般全部大写!!!