Linux中关于环境变量的一些基本知识
Posted 程序猿是小贺
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中关于环境变量的一些基本知识相关的知识,希望对你有一定的参考价值。
环境变量
1.概念
环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,环境变量通常具有某些特殊用途,还有在系统当中通常具有全局特性。
2.常见环境变量
PATH : 指定命令(可执行程序)的搜索路径
HOME : 指定用户的主工作目录(即用户登陆到Linux系统中时,默认的目录,当前用户的家目录)
SHELL : 当前Shell,它的值通常是/bin/bash。
和环境变量相关的命令
- echo: 显示某个环境变量值
- export: 设置一个新的环境变量
- env: 显示所有环境变量
- unset: 清除环境变量
- 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中关于系统启动加载环境变量的顺序问题