2015-05-09 27 views
1

vxworks shell中是否存在列出所有環境變量及其當前值的命令?這在聯合國中是非常有可能的,並且在某些情況下可能會有所幫助。顯示Vxworks中的所有環境變量

+0

我希望下面的答案有所幫助 - 如果是這樣,請分享適當的upvote/accept愛。如果沒有,請讓我們知道爲什麼不這樣做,答案可以改善。你可能也想看看你的問題歷史,因爲你似乎有幾個問題有好的但未被接受的答案。 – mjs

回答

2

沒有特定的命令可以打印全球環境,但是您可以通過使用envShow()來達到目的。 envShow()顯示已識別任務的所有環境變量。例如:

->envShow tNet0 
(global environment) 
value = 21 = 0x15 = __local_cie + 0x1 

本示例打印使用全局環境的tNet0的環境。沒有顯示環境變量,因爲我沒有任何設置。

可以顯示調用任務的環境以及:

->envShow 0 
(private environment) 
value = 22 = 0x16 = __local_cie + 0x2 

這說明,調用任務 - 在這種情況下tShell - 使用私有的環境。同樣,沒有設置變量,否則會顯示。

,並允許設置一個環境變量只是爲了證明它的工作原理:

->putenv("bar=foo") 
value = 0 = 0x0 
->envShow 0 
(private environment) 
0: bar=foo 

如果你願意做一個源碼編譯,你可以修改envLib.c添加一個命令直接傾倒全球環境,這將是相當微不足道的。或者,只需使用envShow如上所述。您可能需要一些試驗和錯誤來使用全球環境來查找任務。

+0

我正在尋找一個命令,該命令將打印所有全局適用的環境變量的列表,類似於命令在沒有任何參數的情況下執行時在Unix shell上的'set'命令的輸出。 – Ajoy

+0

上面應該這樣做,只要您選擇的任務是使用全局環境的任務,而不是私有環境,例如在我的示例中,tNetTask使用全局環境 – mjs