日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Linux下控制环境变量

發布時間:2023/11/27 生活经验 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux下控制环境变量 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

查看環境變量

查看某一環境變量:比如我們需要查看HOME這個環境變量,我們可以在shell下直接輸入echo $HOME
我們可以把所有的環境變量和環境變量的值都打印出來

打印環境變量

libc中定義的全局變量environ指向環境變量表,environ沒有包含在任何頭文件中,所以
在使用時 要用extern聲明。

下面提供了一個程序打印環境變量

#include<stdio.h>2 int main()3 {4     //libc中定義的全局變量environ指向環境變量表,environ沒有包含在任何頭?文件中,所以5     //在使?用時 要?用extern聲明。6     extern char** environ;7 //    while(environ)8 //    {9 //      printf("%s\n",*environ++);10 //    }11 //    printf("hah");12     int i = 0;13     for(i = 0;environ[i]!=NULL;i++)14     {15         printf("%s\n",environ[i]);16     }17     return 0;18 }

控制環境變量接口getenv,setenv,unsetenv

  • getenv()函數
#include <stdlib.h>char *getenv(const char *name);

getenv()功能的搜索環境列表找到環境變量名稱,并返回一個
指向相應值串的指針。如果沒有找到則返回NULL

  • setenv()函數和unsetenv
#include <stdlib.h>int setenv(const char *name, const char *value, int overwrite);int unsetenv(const char *name);

setenv()是設置環境變量,如果成功則返回0,如果沒有成功則返回非0

unsetenv()是刪除一個環境變量

下面提供一段程序大家可以自行的測試一下

#include <stdio.h>  
#include <stdlib.h>  
#include <string.h>  int main(void)  
{  char* val;  const char* name ="ABC";  //獲取ABC環境變量的值  val = getenv(name);  printf("No.1  %s=%s\n", name, val);  //覆蓋寫入環境變量  setenv(name, "I amsure of that I will get it", 1);  printf("No.2%s=%s\n", name, val);  val = getenv(name);  printf("No.3%s=%s\n", name, val);  //刪除一個環境變量  int ret =unsetenv("ABC");  printf("ret =%d\n",ret);  val = getenv(name);  printf("No.3 %s=%s\n",name, val);  return 0;  
}  

總結

以上是生活随笔為你收集整理的Linux下控制环境变量的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。