LInux 環境變量

環境變量簡介

環境變量一般是指在操作系統中用來指定操作系統運行環境的一些參數。

常見的環境變量
  • PATH:指定命令的搜索路徑
  • HOME:用戶的主工作目錄,即用戶登陸時的默認路徑
  • SHELL:當前shell,通常是/bin/bash
查看環境變量的方法
echo

功能:查看指定環境變量的內容
語法:echo [變量名]

在這裏插入圖片描述

env

功能:顯示所有環境變量
語法:env
在這裏插入圖片描述
並且不同用戶的HOME變量不一樣

path

當我們輸入命令時,爲什麼系統自帶的命令能直接使用,而我們自己寫的程序則需要指明路徑

如:在這裏插入圖片描述
當我們直接輸入ls時shell就會自動進入path中查找該程序並執行,而我們自己寫的程序如果沒有指定環境變量,直接輸入程序名是不會有任何執行,只有指定位置./test纔會執行。

所以如果我們將當前程序的目錄加入環境變量中,也可以直接調用
在這裏插入圖片描述

在這裏插入圖片描述
將當前目錄加入環境變量後,也可以直接調用改目錄下的程序

其餘指令的操作類似,就不演示了

echo: 顯示某個環境變量值
export: 設置一個新的環境變量
env: 顯示所有環境變量
unset: 清除環境變量
set: 顯示本地定義的shell變量和環境變量

代碼如何獲取環境變量

在這裏插入圖片描述
其實main函數有三個參數,第一個是接收的指令數量,第二個是接收的指令,第三個是環境變量,當我們不指定環境變量時就會自動使用path

在這裏插入圖片描述
系統也給了我們getenv和putenv來獲取或設置環境變量
在這裏插入圖片描述

同時,環境變量是具有全局屬性的,並且子進程會繼承父進程的所有環境變量