根据开发级别,我使用的电脑有三台。
我的个人电脑有一个不同的版本,另外两台是开发和生产服务器,它们的特征相似,但密码不同。
我在三台计算机上使用了部分代码,但有时我必须根据运行程序的计算机来调整设置。是否有环境变量可以让我识别正在运行的计算机,以便我可以自动执行此操作?
服务器是 Ubuntu 12.04,我的电脑是 Kubuntu 14.04。
谢谢。
答案1
使用$HOSTNAME
,例如:
$ echo $HOSTNAME
Castle2012
可能会有帮助,例如$SESSION
:
$ echo $SESSION
ubuntu
例如$_system_version
:
$ echo $_system_version
14.04
答案2
区分一个系统与下一个系统的一个非常简单的可能方法是第一个接口的 mac 地址。
系统上的每个网络设备都有一个唯一的 mac 地址,读取设备的 mac 地址可能会告诉您正在使用哪个系统。
例如:
$ /sbin/ifconfig p4p1 | grep ether | awk '{print $2}'
b8:ca:3a:c7:e2:e6
使用 mac 地址我可以确定这是我正在工作的系统,因为该接口的 mac 地址不会匹配(除非故意更改)另一个系统的接口 mac 地址。