環境變數
外觀
環境變數是一個動態命名的值,可以影響電腦上行程的行為方式。例如一個正在執行的行程可以查詢TEMP環境變數的值,以發現一個合適的位置來儲存臨時檔案,或者查詢HOME或USERPROFILE變數,以找到執行該行程的用戶所擁有的目錄結構。
在所有 UNIX 和 類Unix系統中, 每個行程都有其各自的環境變數設置。 預設情況下, 當一個行程被建立時, 除了建立過程中的明確更改外,它繼承了其父行程的絕大部分環境設置。 在API層級上, 使用fork和exec函數進行變數設置。或利用bash shell檔案, 使用特殊的命令呼叫來改變環境變數:通過Env 間接替代或者使用ENVIRONMENT_VARIABLE=VALUE <command> 標識。所有的UNIX作業系統 以及DOS 和Microsoft Windows 都使用環境變數,但是它們使用不同的環境變數名稱。我們可以通過執行程式來訪問環境變數的值。環境變數的例子包括:
- PATH 羅列出 shell 搜尋 用戶 輸入的執行命令所在的目錄。
- HOME (類Unix系統) 和 userprofile (Microsoft Windows) 表示用戶的家目錄在檔案系統中的位置。
- TERM (類Unix系統) 指定使用終端或虛擬終端 的類型 (如, vt100 或 終端)。
- CVS_RSH (類Unix系統) 該選項可用於 ext 方式中指明 cvs 客戶端尋找遠端 shell 的路徑,用作連接 cvs 伺服器和以更高的優先權覆蓋 $CVS_RSH 環境變數中指定的路徑。
- MAIL (類Unix系統) 當前用戶的郵件存放目錄。
Shell 指令碼 和 批次檔 使用環境變數來儲存臨時值,用於以後在指令碼中參照,也用於傳遞數據和參數給子行程。 在Unix系統中,一個在指令碼或程式中更改的環境變數值只會影響該行程,亦可能影響其子行程。其父行程和無關行程將不受影響。在DOS中,更改或刪除一個批次檔中的環境變數值將改變變數的期限命令的存在。
在Unix系統通過初始化指令碼啟動時,環境變數通常會在此時被初始化,因此會被系統中的其它行程所繼承。用戶可以而且經常添加環境變數到他們使用的shell指令碼中。 在Windows系統中,環境變數儲存在 Windows 登錄檔中。
這是一篇與電腦相關的小作品。您可以透過編輯或修訂擴充其內容。 |