[英]python capture environment variables
這個bash腳本可以捕獲數據通過STDIN傳遞時設置的所有環境變量,例如:
echo "Hello" | ./script.sh
script.sh
#!/bin/bash
CAPTURE_FILE=/var/log/capture_data
env >> ${CAPTURE_FILE}
exit 1
它有什么方法我可以在python中做同樣的事情?
解決:
這是由此產生的python版本..
#!/usr/bin/env python
import os
import sys
def capture():
log = os.environ
data = open("/tmp/capture.log", "a")
for key in log.keys():
data.write((key))
data.write(" : ")
for n in log[key]:
data.write('%s' % ((n)))
data.write("\n")
data.close()
sys.exit(1)
def main():
capture()
if __name__ == "__main__":
main()
當然,看看os.environ
。
matan@swarm ~ $ python
Python 2.7.2+ (default, Jan 20 2012, 17:51:10)
[GCC 4.6.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> print os.environ
{'LOGNAME': 'matan', 'WINDOWID': '25165833', 'DM_CONTROL': '/var/run/xdmctl', 'PATH': '/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 'DISPLAY': ':0', 'SSH_AGENT_PID': '3648', 'LANG': 'en_GB.UTF-8', ... }
os.environ
是一個包含所有環境變量及其值的映射。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.