Linux中关于环境变量的一些基本知识

Posted 程序猿是小贺

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中关于环境变量的一些基本知识相关的知识,希望对你有一定的参考价值。

环境变量

1.概念

环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,环境变量通常具有某些特殊用途,还有在系统当中通常具有全局特性。

2.常见环境变量

PATH : 指定命令(可执行程序)的搜索路径
HOME : 指定用户的主工作目录(即用户登陆到Linux系统中时,默认的目录,当前用户的家目录)
SHELL : 当前Shell,它的值通常是/bin/bash。
和环境变量相关的命令

  1. echo: 显示某个环境变量值
  2. export: 设置一个新的环境变量
  3. env: 显示所有环境变量
  4. unset: 清除环境变量
  5. set: 显示本地定义的shell变量和环境变量
    环境变量的文件

系统级的: /etc/bashrc
在这里插入图片描述
不推荐修改系统级的环境变量文件

用户级的
~/.bashrc (隐藏文件)
~/.bash_profile
在这里插入图片描述
推荐修改环境变量时修改这两个文件

查看环境变量方法

echo $你的环境变量名称
在这里插入图片描述
以冒号作为间隔,每一个内容都是一个路径

env 查看所有的环境变量
在这里插入图片描述

修改环境变量
临时修改:直接在命令行中执行命令,只针对当前终端有效,重启后则失效

范式:export 环境变量名 = $环境变量名:新添加的环境变量的值

永久修改:将命令直接写到环境变量文件中
使用方法:source 环境变量文件

环境变量的组织方式

每个程序都会收到一张环境表,环境表是一个字符指针数组,每个指针指向一个以’\\0’结尾的环境字符串
在这里插入图片描述

通过代码如何获取环境变量

 #include <stdio.h>      
/* argc:命令行参数的个数
 * argv:具体命令行参数    
 * envp:环境变量的值    
 * */    
int main(int argc, char *argv[], char *env[])    
{    
    for(int i = 0; i < argc; i++)    
    {                                                                                           
        printf("%s\\n", argv[i]);    
    }                               
    for(int i = 0; env[i] != NULL; i++)    
    {                                      
        printf("%s\\n", env[i]);    
    }                              
    return 0;                     
}    

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

#include <stdio.h>
#include <stdlib.h>
int main()
{
 printf("%s\\n", getenv("PATH"));
 return 0;
}

注明:转载请提示出处

以上就是本篇文章的重点,今天就到此结束了哈,有不同的观点或者有不同思路的朋友欢迎大家赏光私我哈,本着相互进步的原则,希望大家能多多向我提意见,谢谢~~
在这里插入图片描述

以上是关于Linux中关于环境变量的一些基本知识的主要内容,如果未能解决你的问题,请参考以下文章

2014马哥Linux0214中关于系统启动加载环境变量的顺序问题

Unity中关于AnimationEvent.Time的问题

camke中关于变量的一些知识

组件化项目中关于BuildConfig的使用

js的闭包中关于执行环境和作用链的理解

linux中关于进程那些事