Python上的Python:获取 etchostname中的主机名

Python上的Python:获取 etchostname中的主机名,第1张

概述Python上的Python:获取/ etc / hostname中的主机名

从一个Python脚本中,我试图在linux中获取主机名。 这是一个Debian GNU / linux Amazon EC2实例。 我在/etc/hostname设置了正确的名称。 推荐的解决schemesocket.gethostname()不工作:它显示IP加上IP元组。

我search了StackOverflow,没有什么东西出来,例如这里 。 socket.getfqdn()更糟糕:它产生ip-[IP tuple].eu-west-1.compute.internal 。

我做错了什么,或者有没有干净的解决scheme来获取/etc/hostname ? 当然,备份解决scheme是读取文件etc/hostname本身,但某些内在平台相关的内容太exception了。 谢谢!

如何获得UPnP的内部IP,外部IP和默认网关

使用getaddrinfocachingDNS

我如何跟踪用户从Java Web应用程序的windowslogin名

如何在windows中模拟较慢的networking连接

如何通过Java获得linux上的计算机的IP?

如何在C ++中find映射networking驱动器的IP地址?

JAVA:如何创buildhttp url连接select使用的ip地址

在C ++中将hexIP转换为十进制IP

强制Google Chrome使用IPv4作为本地主机

将IP地址绑定到Nginx上的Angular网站

试试os.uname() 。 根据文档 ,它是返回的元组中的第二个位置。

但是,正如文档本身所说,“获取主机名的更好方法是socket.gethostname()甚至是socket.gethostbyaddr(socket.gethostname()) 。

主机名的通用来源是主机名(1) 。 这个程序调用相当于uname -n 。

在Python中,您可以使用platform.node()或os.uname()[1] 。

首先,所有的信用都应该去m1k3y02,他给了我一个评论的提示。 现在, 为了后代,我会给出正确的答案:我的Amazon EC2很久没有重启过了。 我在/etc/hostname设置了主机/etc/hostname但没有到达系统,如uname -n 。 所以简单地运行/etc/init.d/hostname.sh就行了。 之后, socket.gethostname()按预期工作。

这里的教训是:首先看看系统是否得到它,然后才怪这个语言。

你有没有尝试过socket.gethostbyaddr(socket.gethostname()) ?

总结

以上是内存溢出为你收集整理的Python上的Python:获取/ etc / hostname中的主机名全部内容,希望文章能够帮你解决Python上的Python:获取/ etc / hostname中的主机名所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1289064.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存