unset — 刪除 Shell 變數或函數

刪除 Shell 變數或函數,使其完全不存在。

語法

unset [選項] 名稱...

常用選項

選項 說明 範例
-v 只刪除變數(預設) unset -v MYVAR
-f 只刪除函數 unset -f myfunc
-n 刪除名稱引用(nameref) unset -n ref

使用範例

範例 1:刪除環境變數

刪除 TEMP_API_KEY 變數,確保敏感資訊不殘留在環境中。

$ export TEMP_API_KEY="secret123"
# ... 使用後 ...
unset TEMP_API_KEY
printenv TEMP_API_KEY  # 無輸出(已刪除)
範例 2:在腳本中清理暫時變數

腳本結束前清理敏感的暫時變數(如密碼)。

$ PASSWORD="my-secret"
curl -u "admin:" https://api.example.com/
unset PASSWORD

延伸閱讀