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

湖北网站建设 鄂 icp运营培训班有用吗

湖北网站建设 鄂 icp,运营培训班有用吗,wordpress蛋糕主题,网站空间200m初识环境变量 目录: 什么是环境变量常见的环境变量Linux中与环境变量的有关的命令如何获取环境变量环境变量的特点环境变量的作用 1.什么是环境变量 我们在Linux操作系统下,使用指令,比如ls,pwd,cd等等,可以直接使用&#xff0c…

初识环境变量

目录

  1. 什么是环境变量
  2. 常见的环境变量
  3. Linux中与环境变量的有关的命令
  4. 如何获取环境变量
  5. 环境变量的特点
  6. 环境变量的作用

1.什么是环境变量

我们在Linux操作系统下,使用指令,比如ls,pwd,cd等等,可以直接使用,但是我们编译完C/C++文件后产生的test可执行程序,我们却需要输入./test才能运行,我们加了一个路径才让程序跑起来,而平时的操作指令却不需要加路径,为什么?

  • 这是环境变量中的PATH在搞鬼

概念环境变量(Environment Variables)是操作系统用于存储配置信息的变量,这些信息可以影响系统和应用程序的行为。

又比如我们在编译C/C++文件时,我们并没有输入动/静态库的位置,但还是编译成功,原因是有相关环境变量帮助编译器进行查找。

2.常见的环境变量

  • PATH:指定操作系统查找可执行文件的目录列表。
  • HOME:当前用户的主目录路径。
  • USER:当前登录用户的用户名。
  • SHELL:默认的命令行解释器(shell)路径。
  • PWD:当前工作目录路径。
  • LANG / LC_ALL:设置系统的默认语言和区域,影响应用程序的本地化显示。
  • TEMP / TMP:系统临时文件存储路径,程序可在此创建临时文件。

3.Linux中与环境变量的有关的命令

  1. export

    • 用途:设置一个新的环境变量或将一个本地变量变为环境变量,使其在当前 shell 会话的子进程中可用。

    • 用法export VAR_NAME=value

      export PATH="$PATH:/new/path"	#在PATH环境变量下新增路径,需要带上旧的PATH,不然PATH将只有新的路径
      export MY_VAR="Hello"
      

    本地变量是什么?

    MY_VAR="Hello" 			#不加export,此时的MY_VAR就是本地变量
    export MY_VAR="Hello" 	#MY_VAR此时是就是临时的环境变量(仅对当前会话有效)
    
  2. echo

    • 用途:显示环境变量的值。

    • 用法echo $VAR_NAME

      echo $PATH
      echo $USER
      
  3. env

    • 用途:显示当前 shell 会话中的所有环境变量。也可以用于在临时设置环境变量的情况下执行一个命令。

    • 用法

      env             # 显示所有环境变量
      env VAR=value command  # 在特定环境变量设置下执行命令
      

      示例:

      env PATH=/tmp ./myprogram
      
  4. printenv

    • 用途:显示指定环境变量的值。如果不指定变量名,则显示所有环境变量。

    • 用法

      printenv PATH
      printenv          # 显示所有环境变量
      
  5. set

    • 用途:显示所有 shell 变量,包括环境变量和本地变量。也可以用来设置本地变量(但不默认导出为环境变量)。

    • 用法

      set              # 显示所有变量
      set VAR=value    # 设置一个本地变量
      
  6. unset

    • 用途:删除一个变量(环境变量或本地变量)。

    • 用法unset VAR_NAME

      unset MY_VAR	
      

4.如何获取环境变量

  1. 使用 Shell 命令获取环境变量

  2. 从配置文件中获取

    在 Linux 系统中,环境变量可以通过读取用户或系统配置文件获取,例如:

    • /etc/environment:全局环境变量配置文件,影响系统中的所有用户。
    • ~/.bashrc~/.bash_profile~/.profile:用户特定的配置文件,在用户登录时加载。
  3. 编程语言中获取环境变量,这里只讨论C语言

    • 通过系统调用获取–>getenv

      #include <stdio.h>
      #include <stdlib.h>
      int main()
      {printf("%s\n", getenv("PATH"));return 0;
      }
      
    • 命令行第三个参数

      #include <stdio.h>
      int main(int argc, char *argv[], char *envp[])
      {int i = 0;for(; env[i]; i++){printf("%s\n", envp[i]);}return 0;
      }
      

      对于main函数居然有三个参数,我是很震惊的,因为已经学了一年C/C++了,才知道。

      1. int argc(Argument Count):

        • 表示命令行参数的个数,包括程序本身的名称。
        • argc 的值至少为 1,因为第一个参数是程序的名称。

        例如,如果运行 ./myprogram arg1 arg2,则 argc 的值为 3。

      2. char *argv[](Argument Vector):

        • 一个字符串数组,包含所有命令行参数。
        • argv[0] 是程序的名称或路径,argv[1]argv[argc - 1] 是用户传递的参数。
        • argv 的最后一个元素通常是一个空指针(NULL),表示参数列表的结束。

        在前面的例子中,argv[0]./myprogramargv[1]arg1argv[2]arg2

      3. char *envp[](Environment Pointer):

        • 环境变量的字符串数组(通常不常见于标准 C,但在某些编译器和系统中支持)。
        • 每个元素都是一个以等号 = 分隔的字符串,形式为 "KEY=VALUE"
        • envp 的最后一个元素通常是一个空指针(NULL),表示环境变量列表的结束。

        通过 envp,程序可以直接访问调用它时的所有环境变量。需要注意的是,使用 envpmain 函数通常定义为 int main(int argc, char *argv[], char *envp[])

    • 通过第三方变量environ获取

      #include <stdio.h>
      int main(int argc, char *argv[])
      {extern char **environ;		//二级指针int i = 0;for(; environ[i]; i++){printf("%s\n", environ[i]);}return 0;
      }
      
      • environ 是一个特殊的全局变量,它指向环境变量的数组。
      • environ没有包含在任何头文件中,所以在使用时 要用extern声明。
      • 在 Linux 和 Unix 系统中,environ 数组的最后一个元素为 NULL,表示环境变量列表的结束。

5.环境变量的特点

  • 继承性:父进程可以将其环境变量传递给子进程,子进程会继承父进程的环境变量副本。

    本地变量:没有继承性

  • 临时性:在命令行会话中设置的环境变量仅对当前会话有效。永久更改环境变量需要将其添加到系统或用户的环境配置文件中(如 .bashrc.profile 或 Windows 系统变量设置)。

  • 大小写敏感:在 Linux 和 Unix 系统中,环境变量名称区分大小写,而在 Windows 中则不区分大小写。

6.环境变量的作用

  1. 配置应用程序:许多应用程序通过读取环境变量获取其配置参数,比如数据库连接信息、API 密钥、以及调试模式等设置。

  2. 设置系统路径:环境变量 PATH 列出操作系统查找可执行程序的目录路径。系统在运行命令时,会按照 PATH 中定义的目录顺序查找对应的可执行文件。

    意味着当我们将test加入到的绝对路径加入到PATH后,那么我们就可以直接使用test指令。

  3. 用户信息与系统设置:环境变量还存储当前用户的相关信息(如 HOMEUSER 等),以及系统的临时目录路径(如 TEMPTMP)。

  4. 传递配置信息:环境变量为父进程向子进程传递配置信息提供了一个简便的方式。在运行进程时,操作系统会将当前环境变量复制到该进程中,使进程能直接读取这些变量。

在使用 gcc 编译程序时,环境变量主要起到配置应用程序设置系统路径的作用。

http://www.tj-hxxt.cn/news/84732.html

相关文章:

  • 做海报挣钱的网站全球搜索引擎网站
  • 油气集输毕业设计代做网站阿里巴巴seo排名优化
  • 郑州微网站制作营销型网站制作
  • 长春做网站哪里好专门发广告的app
  • 襄阳手机网站建设网络营销的定义
  • php宠物用品公司网站源码360点睛实效平台推广
  • 第三方网站下载素材是怎么做百度seo建议
  • 国内哪个推广网站做的好宁德市蕉城区
  • 风科网免费网站友情链接举例
  • 如何自制一个网站搜索引擎营销seo
  • 北京漫步云端网站建设外贸独立站推广
  • 各大高校的校园网站建设软文是什么样子的
  • 网站备案掉了怎么办如何做推广推广技巧
  • 网站制作建站程序西安seo包年服务
  • 杭州软件定制开发网站做优化一开始怎么做
  • 社区居委会网站建设公司官网模板
  • 做外贸应该去什么网站整合营销策划方案模板
  • 美国人做的汉字网站网上推销产品去什么平台
  • 柳州网站建设源码网络推广外包公司哪家好
  • 沈阳手机网站建设专业seo站长工具
  • 淘宝做网站骗局活动策划方案详细模板
  • 智慧团建网站登陆平台镇江网站关键字优化
  • 网站建设如何快速增加用户哪个平台推广效果好
  • 哪个网站有上门做指甲php开源建站系统
  • 深圳市建网站公司外贸推广哪个公司好
  • 律师网站建设公司打开网址资料网站
  • 橙子建站的验证码安全吗女生读网络营销与电商直播
  • 武汉建网站的网站淘宝网店代运营正规公司
  • 全国人防工程建设管理培训班举行seo网站推广专员
  • 在阿里巴巴做网站免费seo工具