如何区分python脚本是在putty ssh还是在VNC的终端上运行?

时间:2018-04-11 18:28:59

标签: python python-2.7

有没有办法区分以下两种运行python脚本的方法?

  1. 使用putty ssh连接到虚拟机并运行python 脚本就可以了
  2. 使用VNC Viewer登录虚拟机 直接在其终端上运行python脚本
  3. 我需要一种方法来从这两个选项中找出脚本运行的方式并相应地采取措施。如果它是通过ssh运行的,我需要在远程机器上打开webbrowser,否则在VNC机器上打开。如果可行,有人可以在这里提出建议吗?

1 个答案:

答案 0 :(得分:3)

通常,如果您在GUI环境(X11)中运行,则会设置DISPLAY变量。访问DISPLAY环境变量的示例代码:

>>> import os
>>> print( 'DISPLAY' in os.environ )

另一个选择利用OpenSSH通常会设置几个变量(配置愿意)的事实:

>>> print( 'SSH_CONNECTION' in os.environ )
>>> print( 'SSH_CLIENT' in os.environ )
>>> print( 'SSH_TTY' in os.environ )