export Shell環境和變數生存期

2021-04-14 16:46:29 字數 482 閱讀 7813

test='value'

export test

這樣的指令碼執行完後,test實際上是不存在的。接著看下面的:

test='value'

export test

bash

這裡在指令碼最後一行再開乙個子shell,該shell應該是指令碼檔案所在shell的子shell,這個指令碼執行完後,是可以看到test這個變數的,因為現在是處於它的子shell中,當用exit退出子shell後,test變數消失。

結論:1、執行指令碼時是在乙個子shell環境執行的,指令碼執行完後該子shell自動退出;

2、乙個shell中的系統環境變數才會被複製到子shell中(用export定義的變數);

3、乙個shell中的系統環境變數只對該shell或者它的子shell有效,該shell結束時變數消失(並不能返回到父shell中)。

4、不用export定義的變數只對該shell有效,對子shell也是無效的。

ServerVariables集合環境變數列表

語法 request.servervariables server environment variable 引數伺服器環境變數,指定要檢索的伺服器環境變數名。可以使用下面列出的值 變數說明path info轉換後的版本,該變數獲取路徑並進行必要的由虛擬至物理的對映。query string查詢ht...

協變和逆變

協變和逆變都是術語,前者指能夠使用比原始指定的派生型別的派生程度更大的型別,後者指能夠使用比原始指定的派生型別的派生程度更小的型別。using system using system.collections.generic using system.text class derived base s...

協變和逆變

二 真正的協變和逆變 概念 1 以前的泛型系統 或者說沒有in out關鍵字時 是不能 變 的,無論是 逆 還是 順 協 2 當前僅支援介面和委託的逆變與協變 不支援類和方法。但陣列也有協變性。3 值型別不參與逆變與協變。協變 foo foo public class testoutwhere t ...