歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Linux環境變量設置和訪問

Linux環境變量設置和訪問

日期:2017/3/2 10:05:22   编辑:關於Linux

環境變量是和Shell緊密相關的,用戶登錄系統後就啟動了一個Shell。對於Linux來說一般是bash,但也可以重新設定或切換到其它的 Shell。根據發行版本的情況,bash有兩個基本的系統級配置文件:/etc/bashrc和/etc/profile。這些配置文件包含兩組不同的 變量:shell變量和環境變量。前者只是在特定的shell中固定(如bash),後者在不同shell中固定。

本文根據文末鏈接文章精簡、整理,非天緣原創,特此聲明。

一、環境變量設置

1、顯示環境變量

$ echo $HOME

示例使用echo顯示變量HOME。其它變量類似使用。

2、設置一個新的環境變量

$ export MYDIR=”/usr/local/include”

設置MYDIR為/usr/local/include

3、顯示所有環境變量

$ env

4、使用set命令顯示所有本地定義的Shell變量

$ set

5、使用unset命令來清除環境變量

$ unset $MYDIR

刪除環境變量MYDIR。

6、添加到系統PATH

示例修改.bash_profile文件:

$ vi .bash_profile #修改環境變量定義文件

然後編輯你的PATH聲明,其格式為:

PATH=$PATH:<PATH 1>:<PATH 2>:---:<PATH N>

只需把新加的路徑與其它路徑中間用冒號隔開即可

7、立刻生效

$ source .bash_profile

二、環境變量訪問

下文示例用C程序來訪問和設置環境變量,我們有三個函數來設置或訪問一個環境變量。

1.getenv()訪問一個環境變量。輸入參數是需要訪問的變量名字,返回值是一個字符串。如果所訪問的環境變量不存在,則會返回NULL。
2.setenv()在程序裡面設置某個環境變量的函數。
3.unsetenv()清除某個特定的環境變量的函數。

另外,還有一個指針變量environ,它指向的是包含所有的環境變量的一個列表。下面的程序可以打印出當前運行環境裡面的所有環境變量:
#include <stdio.h>
extern char**environ;
int main ()
{
char**var;
for (var =environ;*var !=NULL;++var)
printf (”%s /n “,*var);
return 0;

}

Copyright © Linux教程網 All Rights Reserved