您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“Linux export命令怎么正確使用”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Linux export命令怎么正確使用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
為shell變量或函數設置導出屬性。
export [-fn] [name[=word]]... export -p
定義一到多個變量并設置導出屬性。
修改一到多個變量的值并設置導出屬性。
刪除一到多個變量的導出屬性。
顯示全部擁有導出屬性的變量。
為一到多個已定義函數新增導出屬性。
刪除一到多個函數的導出屬性。
顯示全部擁有導出屬性的函數。
-f:指向函數。 -n:刪除變量的導出屬性。 -p:顯示全部擁有導出屬性的變量。 -pf:顯示全部擁有導出屬性的函數。 -nf:刪除函數的導出屬性。 --:在它之后的選項無效。
name(可選):變量名或已定義函數名。
value(可選):變量的值。
export返回true除非你提供了非法選項或非法名稱。
# 顯示全部擁有導出屬性的變量。 # export -p # export # 顯示全部擁有導出屬性的函數。 # export -pf
# 首先刪除要演示的變量名 #unset a b # 定義變量的同時增加導出屬性 export a b=3 # 當然也可以先定義后增加導出屬性 b=3 export b # 修改擁有導出屬性的變量的值 export a=5 b=7 # 當然也可以直接賦值修改 a=5;b=7 # 刪除變量的導出屬性 export -n a b
# 首先刪除要演示的函數名 unset func_1 func_2 # 創建函數 function func_1(){ echo '123'; } function func_2(){ echo '890'; } # 為已定義函數增加導出屬性 export -f func_1 func_2 # 刪除函數的導出屬性 export -fn a b
# 添加環境變量(JAVA)到`~/.bashrc` PATH=/usr/local/jdk1.7.0/bin:$PATH # 添加當前位置到動態庫環境變量 export LD_LIBRARY_PATH=$(pwd):${LD_LIBRARY_PATH}
對未定義的函數添加導出屬性。
對沒有導出屬性的函數/變量執行刪除導出屬性操作。
在 -- 后使用選項。
A:它們會成為環境變量,可以在腳本中訪問它們,尤其是腳本中調用的子進程需要時。
A:只有通過source方式調用的腳本會生效,您可以查看source命令獲得更多信息;其他方式只是在子shell中執行。 之前的不會影響,之后的除非是修改了~/.bashrc這種啟動終端時加載的腳本。
這個當前用戶有執行權限的腳本卻不能使用這些函數和變量?
A:請在~/.bashrc文件中增加export它們的語句。
A:是可以的(如果你的bash支持它們),不過有些問題。
A:因為declare也能夠設置變量或函數的導出屬性,詳見declare命令。
該命令是bash內建命令,相關的幫助信息請查看help命令。
在info bash或
的 3.7.3節提到了shell執行環境,其中涉及變量和函數的內容如下
shell parameters that are set by variable assignment or with set or inherited from the shell’s parent in the environment
shell functions defined during execution or inherited from the shell’s parent in the environment
那么第一句話中的參數又和變量有什么關系呢?在3.4節第一段中提到:
A variable is a parameter denoted by a name.
變量是有名字的參數。
那么子shell確實繼承了父shell中帶有導出屬性的變量或函數。
讀到這里,這篇“Linux export命令怎么正確使用”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。