Linux——环境变量

文章目录

  • 1.环境变量是什么
  • 2.如何查看环境变量
  • 3.和环境变量相关的命令
  • 4.通过代码获取环境变量
  • 5.通过系统调用获取环境变量
  • 6.环境变量通常是具有全局属性的
  • 7.总结

1.环境变量是什么

环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数;
比如我们在编写代码的时候,从来不知道我们链接的动静态库在哪里却可以链接成功,这是因为有相关的环境变量在帮助编译器进行查找;
环境变量通常具有某些特殊用途,还有在系统当中通常具有全局特性
举个例子:
Linux——环境变量_第1张图片

2.如何查看环境变量

echo $NAME,查看环境变量,NAME为环境变量名称
Linux——环境变量_第2张图片
PATH是环境变量中的一个,我们还有许多环境变量,下面再介绍几个
Linux——环境变量_第3张图片
Linux——环境变量_第4张图片

3.和环境变量相关的命令

1.echo:显示某个环境变量值

2.env显示所有环境变量
Linux——环境变量_第5张图片

3.export:设置一个新的环境变量
Linux——环境变量_第6张图片
4.unset:清除环境变量
Linux——环境变量_第7张图片

5.set:显示本地定义的shell变量和环境变量
Linux——环境变量_第8张图片

4.通过代码获取环境变量

上面介绍了通过命令行的方式来获取环境变量,接下来介绍一下如何用代码获得环境变量
Linux——环境变量_第9张图片
上面提到了argc和argv两个参数,那么env究竟是什么呢?
每个程序都会收到一张环境表,环境表是一个字符指针数组,每个指针指向一个以\0结尾的环境字符串
Linux——环境变量_第10张图片

上述中我们知道了main函数是有参数的,既然是一个函数一定要被调用,有参数就需要传参,那么是谁调用它给它传参的?

这是系统的功劳,无论命令行参数还是环境变量都是由系统获取,系统再调用main函数,系统再提供接口,我们的父进程通过接口调用main函数

5.通过系统调用获取环境变量

常用getenv来获取特定的环境变量
Linux——环境变量_第11张图片
Linux——环境变量_第12张图片

6.环境变量通常是具有全局属性的

环境变量通常具有全局属性,可以被子进程继承下去
Linux——环境变量_第13张图片

Linux——环境变量_第14张图片

7.总结

环境变量:

是什么:是系统中某些具有全局属性的变量,所有的进程都能看到的变量

为什么需要:系统的全局变量,可以让使用者和系统进行查找,定位,确认问题等方面更加的快捷、便利

怎么操作它:通过命令行的方式,通过代码的方式

你可能感兴趣的:(Linux,环境变量,环境变量的全局属性,环境变量的相关命令,通过代码获取环境变量,系统调用获取环境变量)