我们可以在python中完全打印socket.getfqdn和socket.gethostbyname的输出

时间:2016-05-05 09:56:17

标签: python sockets

我们可以在一行或者一行打印“socket.gethostbyname”和“socket.getfqdn”中的信息..我有下面的代码工作..只需要添加这个

#!/usr/bin/python
import sys
import socket
#Name = socket.gethostbyname(host.strip())
#IPD = socket.getfqdn(host.strip())

with open("/home/karn/host1.txt", 'rw') as f:
#     print socket.gethostbyname(host.rstrip())  socket.getfqdn(host.strip())
  for host in f:
     print socket.gethostbyname(host.rstrip())

预期的是:

Server_Name             IP_Address
------------------------------------
server2.example.com         192.10.1.1
server2.example.com         192.10.1.2

目前当我运行它时它只返回IP地址,因为我能够只返回“socket.gethostbyname”...

192.10.1.1
192.10.1.2
192.10.1.3

2 个答案:

答案 0 :(得分:1)

您可以使用string formatting和切片,例如:

print("{0[0]}\t{0[2][0]}".format(socket.gethostbyname_ex(host.rstrip())))

将打印

server2.example.com   192.10.1.1
server2.example.com   192.10.1.2

答案 1 :(得分:0)

这应该有用

  

python -c“import socket; print socket.getfqdn(); print socket.gethostbyname(socket.getfqdn())”