当前位置: 首页 > news >正文

网站建设 账务处理龙华区民治街道

网站建设 账务处理,龙华区民治街道,网站开发专员的面试题,莱芜金点子广告电子版最新一期个人主页点击直达:小白不是程序媛 Linux专栏:Linux系统化学习 代码仓库:Gitee 目录 mian函数传参获取环境变量 手动添加环境变量 导出环境变量 environ获取环境变量 本地变量和环境变量的区别 Linux的命令分类 常规命令 内建命令 …

=========================================================================

个人主页点击直达:小白不是程序媛

Linux专栏:Linux系统化学习

代码仓库:Gitee

=========================================================================

目录

mian函数传参获取环境变量

手动添加环境变量

导出环境变量

environ获取环境变量

本地变量和环境变量的区别

Linux的命令分类

常规命令

内建命令

环境变量相关指令


mian函数传参获取环境变量

上篇文章中我们介绍到C/C++的mian函数是有两个参数的,其实main函数还有第三个参数是用来获取我们的环境变量的。

   1 #include<stdio.h>2 #include<stdlib.h>3 #include<string.h>4 #include<sys/types.h>5 #include<unistd.h>6 int main(int argc ,char * argv[],char * env[])7 {8     int i=0;9     for(;env[i];i++)10     {11         printf("pid: %d , env[%d]:%s\n",getpid(),i,env[i]);                                12     }13 }

 

左边是我们使用指令env得到的结果,右边是我们运行上面得到的结果;对比两者得到的内容,我们会发现是一样的 。其实当我们使用指令启动进程时候都是shell/bash的子进程,因此子进程的命令行参数和环境变量,都是父进程给我们传递的。

父进程确实可以将环境变量传递给子进程,说明父进程是有环境变量的但是父进程shell/bash的环境变量是哪来的呢?

要解决这个问题我们还要回顾上篇文章的内容,上篇文章我们提到环境变量是可以修改的如果我们不小心修改错了会怎么办呢?不妨上手试一试。

模拟误操作后我们会发现一些基础的指令使用不了了,不必担心只需要重新启动我们的xshell即可。

通过这个小实验我们可以证明:

  • 环境变量信息是以脚本配置文件的形式存在的。
  • 我们更改的是bash进程内部的环境变量信息,每一次重新登录,都会给我们形成新的bash解释器并且新的bash解释器自动读取环境变量配置文件形成自己的环境变量信息 。

这个配置文件是存在在我们家目录的一个隐藏文件

因此上面的问题都解释通了:每一次验证登录时bash都会读取.bash_profile这个配置文件中的内容,为bash生成一张环境变量信息表。


手动添加环境变量

Linux下添加环境变量并没有指令,按照系统内自定的环境变量格式直接在命令行中输入即可。

我们手动设置的环境变量其实是本地变量,并不在系统的环境变量表中。

导出环境变量

export+环境变量名+环境变量内容

但是我们导出的环境变量只存在于bash进程中的环境变量表中,退出后重新登录后依然不存在。 

因此我们想要添加自己的环境变量要在上面提到的配置文件中添加。

 

上面中也给大家演示了一种错误不要带空格。

系统环境变量具有全局属性,是会被所有的进程继承下去的。


environ获取环境变量

C语言中有两个全局变量一个是error(错误码)一个是environ,其中environ是一个二级指针指向环境变量表的首个字符串的地址。

  1 #include<stdio.h>2 #include<stdlib.h>3 #include<string.h>4 #include<sys/types.h>5 #include<unistd.h>6 int main()7 {8     extern char**environ;9     int i=0;10     for(;environ[i];i++)11     {12         printf("%s\n",environ[i]);                                                           13 14     }15 }


结合上篇文章我们就介绍了三种获取环境变量的方式

  • getenv
  • main函数传参
  • environ

本地变量和环境变量的区别

  • 本地变量只在bash内部有效,不会被子进程继承下去。
  • 环境变量通过让所有的子进程继承的方式实现全局性!

Linux的命令分类

我们误操作环境变量后有些大部分的命令是执行不了的,这些命令就是常规命令;但是像echo命令依然可以执行,这些命令就是内建命令。

常规命令

shell创建一个子进程,让子进程执行的。

内建命令

shell命令行的一个函数当然可以直接读取shell内部定义的本地变量。


环境变量相关指令

  • echo: 显示某个环境变量值
  • export: 设置一个新的环境变量
  • env: 显示所有环境变量
  • set: 显示本地定义的shell变量和环境变量
  • unset 取消环境变量

这篇文章结合上篇文章就把Linux中命令行参数和环境变量就介绍完了;在后面的文章中我们还会再次涉及到。希望大家读完后有很大的收获,也可以在评论区点评文章中的内容和分享自己的看法。您三连的支持就是我前进的动力,感谢大家的支持!!!

http://www.sczhlp.com/news/130131/

相关文章:

  • 一个人做网站的难度汕头企业网络推广
  • 02020405 EF Core基础05-EF Core反向工程、EF Core和ADO.NET Core的联系、EF Core无法做到的事情
  • 02020406 EF Core基础06-EF Core生成的SQL
  • 做外贸找工厂货源网站室内设计网站哪些号
  • 企业网站推广建设文档管理系统
  • 网站建设图文片上饶专业做网站建设
  • 重庆建站程序企业网页制作公司
  • 怎么用企业网站做营销建筑网课回放
  • 各位大哥给个网站wordpress安装包文件夹
  • asp.net做音乐网站建设工程交易中心的性质
  • 男女做暖暖的视频试看网站wordpress rss源
  • 怎么申请做网站云主机上传网站
  • 哪些网站做代理商做游戏网站的分析
  • 怎么看网站什么时候做的企业网站建设 厦门
  • 策划书网站网站建设新报价图片欣赏
  • 网站建设推广公司哪家权威网站服务器出问题
  • 快捷的网站建设软件微信网站开发设计
  • python大型网站开发深圳罗湖区网站建设
  • 用那种语言做网站比较好推广引流吸引人的文案
  • 汽车服务站建站流程一般做网站的宽度怎么处理的
  • 400建筑网官网优化什么
  • 洛阳建设工程网站网页源代码能修改吗
  • 大渡口区网站建设贵阳做网站kuhugz
  • 惠州市网站开发华为手机网络营销方式
  • 灵山网站建设项目可行性研究报告
  • 东莞网站wordpress 以前文章灯箱
  • 阳江 网站开发汕头集团做网站方案
  • 做网站建设的网络公司经营范围怎样填王也个人资料
  • 杭州91网站建设西安手机网站建设
  • 山东建设科技产品推广网站杭州萧山区抖音seo排行榜