Pythonでホスト名を取得しようとしています。 Linuxでは、コマンドプロンプトでhostname
と入力すると、次のようになります。
root@phxdbx45:/home/david/zkpython# hostname
phxdbx45
しかし、hostname -f
と入力すると、ubuntuで完全修飾ホスト名を下回ります。これは、Pythonからも必要です。
root@phxdbx45:/home/david/zkpython# hostname -f
phxdbx45.phx.Host.com
Python以下のコードを使用できますが、完全修飾ホスト名は得られません。前述のように、hostname
の出力が得られます。
#!/usr/bin/python
import socket
hostname = socket.gethostname()
print hostname
Pythonで完全修飾ホスト名を取得する方法はありますか?これは信頼性が高く正しいですか?
わかりやすい名前の関数を使用する socket.getfqdn()
:
>>> import socket
>>> socket.getfqdn()
'phxdbx45.phx.Host.com'