Linux

Unix上正在執行的程序的環境變數?

  • November 22, 2018

我需要解決一些與 Unix 系統上的環境變數相關的問題。

在 Windows 上,我可以使用 ProcessExplorer 之類的工具來選擇特定的程序並查看每個環境變數的值。

我怎樣才能在 Unix 上完成同樣的事情?echoingenvcmd 只顯示目前的值,但我想查看正在執行的程序目前使用的值。

cat /proc/<pid>/environ

如果您想擁有給定正在執行的執行檔的 pid(s),您可以在許多其他可能性中使用**pidof**:

AlberT$ pidof sshd   
30690 6512 

編輯

我完全引用了Dennis WilliamsonTeddy的評論,以實現更易讀的輸出。我的解決方案如下:

tr '\0' '\n' < /proc/<pid>/environ

由於這個問題有一個unix標籤,而其他人在解決****linux標籤方面做得很好,你可以使用 OS X 和其他 BSD 派生系統獲取此資訊

ps -p <PID> -wwwe

要麼

ps -p <PID> -wwwE

在 Solaris 上

/usr/ucb/ps -wwwe <PID>

/proc如果您不想記住晦澀的命令, Solaris 也支持該目錄ps

引用自:https://serverfault.com/questions/66363