解釋

解釋

如何取得正在運行的 Linux 進程的以下資訊:

  • 外殼環境變數
  • 工作目錄
  • 命令列選項

答案1

您可以從以下位置獲取此信息/行程文件系統,它儲存有關正在運行的進程的資訊。

  • cat /proc/<pid>/environ
  • cd /proc/<pid>/cwd; pwd -P
  • cat /proc/<pid>/cmdline

答案2

如果您按照@atype的建議輸出環境,您將獲得所有環境變數及其值,它們不帶分隔符號連接在一起。

為了獲得更好的輸出,請使用

$ xargs -0 -L 1 echo < /proc/21645/environ 
LANG=en_US.UTF-8
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
SHELL=/bin/bash
TERM=xterm
LC_MESSAGES=en_US.UTF-8
LANGUAGE=en_US.UTF-8

(出於隱私原因,輸出被縮短)

解釋

/proc/$pid/environ 包含以 null 分隔的列表形式的環境變數。

xargs 是一個從 *STDIN 讀取任意長列表並將其元素提供給工具(在本例中為 echo)的工具,確保不超過最大命令列長度。參數「-0」將xargs 切換為使用null 作為項目分隔符號(而不是預設的空白或換行符),參數「-L 1」將項目數限制為1。 。

相關內容