• Py获取本机指定网卡的ip地址


    前段时间需要批量修改服务器的配置文件,里面包含本机的IP地址,由于服务器有多块网卡并且配置多个ip地址,一开始想写shell脚本批量修改,但是既然现在正在学Python,何不研究下使用Python写,在网络上搜了相关文章,根据自己实际情况,便有了下面的脚本:
    利用Python获取本机指定网卡的ip地址:
    1. #!/usr/bin/env python
    2. # -.- coding: utf-8 -.-
    3. # By Sandler
    4. import socket
    5. import fcntl
    6. import struct
    7. def get_ip_addr(ifname): #ifname传入参数(网卡)
    8. '''
    9. 获取本机指定网卡的ip地址
    10. :param ifname: 指定网卡
    11. :return: 默认None
    12. '''
    13. s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
    14. return socket.inet_ntoa(fcntl.ioctl(
    15. s.fileno(),
    16. 0x8915,
    17. struct.pack('256s',ifname[:15])
    18. )[20:24])
    19. ip = get_ip_addr('eth0')
    20. print(ip)
    修改配置文件,利用Python添加内容:
    1. #!/user/bin/env python
    2. # -.- coding: utf-8 -.-
    3. # By Sandler
    4. res_file = '/etc/resolv.conf' # 定义配置文件变量
    5. f = open(res_file,'a') # 以追加模式打开配置文件
    6. f.write(' servername1.1.1.1') # 把dns配置追加到最后一行
    7. f.close() # 关闭文件
    8. # ————————————————————————————————————————————————
    9. fs_file = '/etc/fstab'
    10. f = open(fs_file,'a')
    11. f.write(' xx xx xx %s xx xx' % ip) #追加一条新的挂载项,把ip写入其中。
    12. f.close()
    脚本写好后使用pscp批量发送到服务器,pssh执行就可以了。




  • 相关阅读:
    腾讯的张小龙是一个怎样的人?
    wordpress 推荐几个主题
    heidisql 可以查看sql
    phpmyadmin 连接外部数据库
    两个效果不错胡时间轴网站
    phpstorm与Mint 快捷键冲突
    Android Action
    Tomcat server.xml
    awk
    makefile
  • 原文地址:https://www.cnblogs.com/sandler613/p/5528130.html
Copyright © 2020-2023  润新知