Linux 进程环境变量详解

本文详细介绍了Linux环境变量的概念,常见环境变量如PATH、HOME、SHELL的用途,以及如何查看、修改环境变量。此外,还探讨了环境变量的组织方式、与之相关的系统级和用户级文件,并讲解了如何在代码中获取环境变量。同时,文章涉及进程虚拟地址空间,包括虚拟地址的特性以及其与物理地址的区别,并提出了操作系统为什么要为进程创建虚拟地址空间的三个经典问题。
摘要由CSDN通过智能技术生成

目录

环境变量

1.概念

2.常见的环境变量

2.1PATH

2.2HOME

2.3SHELL

3.查看当前环境变量

3.1使用env命令来查看​

3.2使用echo查看环境变量内容

3.3环境变量的组织方式

4 环境变量对应的文件

         4.1.系统级文件

         4. 2用户级文件

5.修改环境变量 

           5.1命令范式

           5.2修改方式命令行当中直接修改​​​

           5.3文件中修改

           5.4扩展

6.代码获取环境变量

          6.1通过main函数的参数获取

          6.2argc:命令行中参数个数

          6.3argv:命令行中参数具体内容

          6.4 environ(使用environ 获取环境变量)

          6.5 getenv

       7.进程虚拟地址空间

        ①单个进程打印全局变量的地址

        ②创建子进程,父子进程都打印全局变量的地址

        ③子进程修改全局变量的值,父子进程分别打印全局变量的地址和值

       8.虚拟地址

       9.三个经典问题



环境变量

1.概念

在操作系统中用来指定操作系统运行的一些参数。也就是说,操作系统通过环境变量来找到运行时的一些资源。(执行命令的时候,帮助用户找到该命令在那个路径下。)

e.g: 链接的时候,帮助链接器找到动态库(标准库)(注:用户自己编写的动态库,需要自己指定环境变量)

2.常见的环境变量

2.1PATH

指定可执行程序 搜索路径。程序员执行的命令之所以能够被找到,就是环境变量的作用
验证:
使用 which + 命令查找该命令所在的路径e.g:which ls
查找ls的路径,和PATH中所有路径比对,会找到匹配的路径,所以我们输入ls命令可以直接执行,就是因为这个。还有cd  .  等等操作 都是在PATH下面查找到了路径,所以可以直接操作。

而如果我们要执行我们自己写的文件,它也会先在PATH的所以路径里面搜索对比一次,没有我们自己写的代码的路径,就会报错。如果要执行我们就要./ 告诉bash我们执行的文件的位置在哪里,才可以执行。

PATH的路径:每个分号就是一个路径:

每执行一个指令,首先就会从PATH里面从上到下查找,如果找到就立刻执行。

2.2HOME

登录到Linux操作系统的家目录

2.3SHELL

当前的命令行解释器,默认是"/bin/bash"

3.查看当前环境变量

3.1使用env命令来查看

3.2使用echo查看环境变量内容

3.3环境变量的组织方式

环境变量名称 = 环境变量的值(使用:进行间隔)
理解:
系统当中的环境变量是有多个的,每一个环境变量的组织方式都是key(环境变量名称)= value(环境变量的值,多个值之间用:隔开)。

4 环境变量对应的文件

4.1.系统级文件

4. 2用户级文件

 

5.修改环境变量 

5.1命令范式

export 环境变量名称 = $环境变量名称 :新添加的环

  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值