进程环境变量

目录

1、环境变量的基本概念

2、常见环境变量

3、查看环境变量的方法 

4、测试PATH 

5、环境变量相关命令

6、环境变量的组织方式 

7、深入理解main函数里的三个参数

8、通过代码获得环境变量 

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

10、环境变量通常是具有全局属性的 


1、环境变量的基本概念

环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数。

  • 如:我们在编写C/C++代码的时候,在链接的时候,从来不知道我们的所链接的动态静态库在哪里,但是照样可以链接成功,生成可执行程序,原因就是有相关环境变量帮助编译器进行查找。

环境变量通常具有某些特殊用途,还有在系统当中通常具有全局特性。

我们都知道我们自己写的一串代码,经过编译链接后可以生成可执行程序,我们用./即可使其运行,但是我们系统里的大部分命令也是64位的可执行程序:

  • 既然都是程序,那我们是不是也可以把自己写的程序叫做指令,或者说把系统里面的指令叫做命令程序或者是二进制程序呢??答案是是的!!!我们自己写的程序和系统中的指令并没有多大的区别,我们都可以将其称为指令、工具、可执行程序。

既然它们都一样,那为什么系统里的ls、pwd等命令可以直接用,但是自己写的程序process却要加上./才能运行?

  • command not found-指令无法找到。我们执行一个可执行程序,前提是要找到它!那么为什么系统的命令能找到,而我们自己的程序找不到呢?? 原因就在于linux系统中是存在相关的环境变量,保存了程序的搜索路径的!

2、常见环境变量

我们可以输入指令env查看所有的环境变量:

我们可以发现环境变量的形式都是:变量name+value 

常见的环境变量如下:

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

下面我们来查看一下系统中的环境变量PATH:

3、查看环境变量的方法 

我们可以输入下面的指令来实现对环境变量的查看:

echo $MANE //NAME:所要查的环境变量的名称

我们以查看PATH环境变量为例:

🍒:注意这里的路径分隔符是用:间隔的,当我们输入ls指令时,系统会在这些路径里面一个一个寻找,找到了就执行特定路径下的ls。 这也就证实了一开始所说的,因为我们写的程序不在此路径里面,自然就不能直接用。 

4、测试PATH 

首先我们创建一个可执行文件process:

我们知道我们创建的可执行文件process不能像系统的命令那样直接使用

如果我们想要使自己写的文件process像系统中的命令一样能够直接使用,我们可以使用以下两种方法:

  • 手动添加到系统的路径/usr/bin/里面。
  • 使用export命令把process当前所在的路
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值