linux环境变量
程序员文章站
2022-04-29 23:24:58
...
环境变量:
一般是指在操作系统中用来指定操作系统运行环境的一些参数
环境变量在系统当中通常具有全局特性
常见的环境变量:
PATH*:指定命令的搜索路径
HOME*:指定用户的主工作目录,即登录到linux时默认的目录
HISTSIZE*:指保存历史命令记录的条数
SHELL*:当前Shell,它的值通常是/bin/bash
环境变量相关命令:
env :查看全部的环境变量
echo $NAME:NAME为你想要查看的环境变量名
set:显示本地定义的shell变量和环境变量
unset:清除环境变量
export:设置一个新的环境变量
环境变量的组织方式
每个程序都会配有一张环境表,环境表是字符指针数组,每个指针指向一个以‘\0’结尾的环境字符串
这样我们就可以用一个字符型指针来获取环境变量
具体方法有:
1.命令行第三个参数
1 #include<stdio.h>
2 int main(int argc,char * argv[],char *env[])
3 {
4 int i=0;
5 for(;env[i];i++)
6 {
7 printf("%s\n",env[i]);
8
9 }
10 return 0;
11 }
2.通过第三方变量environ获取
由于environ是指向变量表的全局变量,我们要访问它所指向的内容,所以我们要用二级指针,此外extern来声明,表示environ变量定义在别的文件中
1 #include<stdio.h>
2 int main(int argc,char *argv[])
3 {
4 extern char **environ;
5 int i=0;
6 for(;environ[i];i++)
7 {
8 printf("%s\n",environ[i]);
9 }
10 return 0;
11 }
通过系统调用来获取环境变量
调用getenv函数
1 #include<stdio.h>
2 #include<stdlib.h>
3 int main()
4 {
5 printf("%s",getenv("PATH"));
6 return 0;
7 }
我们常用getenv和putenv来访问特定的环境变量
进程地址空间
进程的地址空间都是虚拟地址,OS负责将虚拟地址转化为物理地址
上一篇: MAVEN环境变量
下一篇: java变量设置_看懂什么是环境变量!