💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤
📃个人主页 :阿然成长日记 👈点击可跳转
📆 个人专栏: 🔹数据结构与算法🔹C语言进阶🔹C++🔹Liunx
🚩 不能则学,不知则问,耻于问人,决无长进
🍭 🍯 🍎 🍏 🍊 🍋 🍒 🍇 🍉 🍓 🍑 🍈 🍌 🍐 🍍
文章目录
一、Linux中如何查看-获取当前环境变量?
1.使用echo $PATH查看
使用指令,查看当前环境变量
echo $PATH
PATH
:你的环境变量名称
系统中的环境变量有很多,以[:]来进行分割。其中便有/usr/bin
这个路径下就存在着我们经常使用的指令【ls】
所以,这下就懂了,为什么这些指令可以直接使用了吧。
二、下面再来学几个个获取环境变量的方法:
1、命令行第三个参数 char *env[]
#include <stdio.h>
int main(int argc, char *argv[], char *env[])
{
int i = 0;
for(; env[i]; i++){
printf("%s\n", env[i]);
}
return 0;
}
这个env是一个指针数组,里面的每个都指向一个变量字符串
2、通过第三方变量environ获取
#include <stdio.h>
int main(int argc, char *argv[])
{
extern char **environ;
int i = 0;
for(; environ[i]; i++){
printf("%s\n", environ[i]);
}
return 0;
}
为什么要声明?
extern char **environ;
libc中定义的全局变量environ指向环境变量表,environ没有包含在任何头文件中
,所以在使用时 要用extern声明。
- 来看看它的结构图
3、通过系统调用获取指定环境变量
指令:
getenv
格式:
char *getenv(const char *name)
作用:搜索 name 所指向的环境字符串,并返回相关的值给字符串
返回值:返回一个以 null 结尾的字符串,该字符串为被请求环境变量的值。如果该环境变量不存在,则返回 NULL。
#include <stdio.h>
#include <stdlib.h>
int main ()
{
printf("PATH : %s\n", getenv("PATH"));
printf("HOME : %s\n", getenv("HOME"));
printf("ROOT : %s\n", getenv("ROOT"));
return(0);
}
- 注意:这个指定并不是打所有变量。而是根据参数
name
来查找返回。