Unix 環境變量

Linux下處理環境變量常見的幾個操作:

env:顯示當前所有的環境變量

set:顯示當前bash下用戶自定義的變量和環境變量

export:把自定義的變量轉換成環境變量


環境表:

Unix下的每一個程序都會有一張環境表,其實我們可以想象,main函數使如下這種形式:

int main(int argc , char*argv[], char *envp[])

 ISO C 規定了main函數沒有第三個參數,所以Unix系統提供了全局變量environ,

環境表如下:


 

下面我們打印當前環境變量驗證一下:

#include <stdio.h>
#incldue <stdlib.h>
extern char **environ
int main()
{
	char **var;
for(var=environ;*var!=NULL; var++)
	printf(“%s\n”,*var);
exit(0);
}

會發現和我們在終端輸入env的結果是一樣的。


通常情況下,我們只對某些環境變量感興趣,所以系統提供了以下幾個函數:

#include <stdlib.h>
Char *getenv(const char*name)
 
Int putenv(char *str)
Int setenv(const char *name, const char *value, int rewrite)
Int unsetenv(const char *name)

(記不住就man,I like the man @_@




發佈了39 篇原創文章 · 獲贊 7 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章