簡體   English   中英

如何查看環境變量?

[英]How do I view my environment variables?

我正在嘗試連接到我的推送服務器但收到錯誤:

缺少客戶端配置:請檢查是否已配置密鑰,密碼和app_id。

我想檢查我的環境變量,但在Stack Overflow上找不到任何明確的方法。

從命令行管理程序打印環境

正如其他答案所指出的,可以從命令行使用/usr/bin/env/usr/bin/printenv來查看在啟動Rails之前shell中的環境,或者在啟動它之后的子shell中。 例如:

  1. rails s RETURN
  2. CTRL-Z
  3. env RETURN
  4. fg 返回

從視圖層顯示ENV

在Ruby中, ENV是環境變量的“類哈希”訪問器; 它實際上不是一個Hash。 只需鍵入ENVENV['foo']就可以輕松地從Rails控制台中反省ENV,但有時您可能希望看到Rails在渲染過程中認為環境是什么。 在這種情況下,您需要Rails調試助手 例如:

# ERB
<%= debug ENV.to_h.to_yaml %>

# HAML
= debug ENV.to_h.to_yaml

調用#to_yaml來序列化ENV對象將使輸出更容易讀取,但需要首先將ENV轉換為散列或數組。 你也可以不用鏈接調用debug ENV ; 它只是在眼睛上更難。

或者在Ubuntu中使用O / S shell

printenv

在rails控制台中使用命令ENV 這將返回您可以訪問的環境值的哈希值。 或者,您可以使用相同的命令從應用程序根路徑訪問環境變量,並且將返回格式化的變量。

這兩個命令都將打印到stdout您的環境變量:

env

printenv

我還在視圖層中使用了以下內容:

<% request.env.each do |key, value| %>
  <strong><%= key %></strong> => <%= value %><br/>
<% end %>

我發現調試由乘客/ nginx級別設置的env變量引起的問題非常有幫助,當我使用rails console時不會顯示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM