import sys,os
parm_list=sys.argv
HOST_PATH=r'C:\liuliang\flask_test\test\hosts'
class HostFile(object):
def __init__(self,parm_list):
self.parm_list=parm_list
self.open_file()
if len(parm_list)==1:
self.get()
else:
method=parm_list[1]
if hasattr(self,method):
func=getattr(self,method)
func()
else:
print('输入格式有误')
self.close_file()

def open_file(self):
self.f=open(HOST_PATH,'r+',encoding='utf-8')
def close_file(self):
self.f.close()

def get(self):
for line in self.f:
print(line.strip())
def delete(self):
ip=self.parm_list[2]
new_f=open(r'C:\liuliang\flask_test\test\new_hosts','w',encoding='utf-8')
for line in self.f:
if ip in line:
continue
new_f.write(line)
new_f.close()
self.close_file()
os.remove(HOST_PATH)
os.rename(r'C:\liuliang\flask_test\test\new_hosts',r'C:\liuliang\flask_test\test\hosts')

def update(self):
ip = self.parm_list[2]
domain=self.parm_list[3]

new_f = open(r'C:\liuliang\flask_test\test\new_hosts', 'w', encoding='utf-8')
for line in self.f:
if ip in line or domain in line:

new_f.write('\n# %s %s\n' % (ip, domain))
continue

new_f.write(line)
new_f.close()
self.close_file()
os.remove(HOST_PATH)
os.rename(r'C:\liuliang\flask_test\test\new_hosts',r'C:\liuliang\flask_test\test\hosts')

def add(self):
ip=self.parm_list[2]
domain=self.parm_list[3]

self.f.seek(0,2)

self.f.write('\n# %s %s'%(ip,domain))

hostfile=HostFile(parm_list)

测试修改hosts文件py小工具的更多相关文章

  1. Mac下修改Hosts文件工具——Gas Mask

    这段时间在做公司APP的项目,看到公司开发IOS的同事和我这边联调程序时,经常需要手动修改hosts文件,比较麻烦. 在公司忙,没有来及找,给同事推荐了我当时知道的一个切换hosts文件的工具:sma ...

  2. 小兴趣:修改Hosts文件,禁止访问指定网页

    不知道Hosts文件什么鬼的朋友可以在网上搜索一下(大牛勿喷- -) 访问网址时,先查询本地的Hosts文件,那么如果我们将Hosts文件中的网址与IP的映射修改之后,将访问错误的IP. 如在文件尾追 ...

  3. Mac OS系统四种修改Hosts文件的方法列举

    转自:https://blog.csdn.net/u012460084/article/details/40186973 使用Mac OS X系统的用户,在某些时候可能遇到了需要修改系统Hosts文件 ...

  4. 在windows下实时监控、接受文件变化小工具

    在windows下实时监控文件变化小工具   在测试的时候,我们可能想实时监控系统打出的log信息,在unix系统上我们可以用"tail -f"实现,在windows下一般就无法做 ...

  5. 苹果Mac OS系统修改Hosts文件的方法

    使用苹果Mac OS X系统的用户有很多,近期也有不少童鞋问我Mac怎么修改hosts,修改hosts的方式有很多,下面我就整理两种比较方便的方法吧,希望能够帮到大家. 在某些时候可能遇到了需要修改系 ...

  6. huhamhire-hosts — Hosts文件自动配置工具

    https://www.anotherhome.net/1376 推荐配合EasyGoAgent使用: EasyGoAgent — 开箱即用的GoAgent Update 2015.5.15 数据文件 ...

  7. Coursera连接不上(视频无法播放),修改hosts文件

    视频问题 如果Coursera网站连接不上,或者视频加载不出来.可以通过如下方式进行配置:   一.找到hosts文件 Windows 系统, hosts文件位于: [C:\Windows\Syste ...

  8. 解决GitHub下载慢问题,不用修改HOSTS文件

    写这篇文章缘由是我用的一款Github上的软件软件版本更新,想去Github上下载新的版本,结果下载速度居然只有几k,还老是下载失败,然后去修改HOSTS文件(我看文章基本都是叫修改这个),修改完成后 ...

  9. 修改hosts文件在本地使域名解析到指定IP

    # Additionally, comments (such as these) may be inserted on individual  # lines or following the mac ...

随机推荐

  1. 以太坊智能合约虚拟机(EVM)原理与实现

    以太坊 EVM原理与实现 以太坊底层通过EVM模块支持合约的执行与调用,调用时根据合约地址获取到代码,生成环境后载入到EVM中运行.通常智能合约的开发流程是用solidlity编写逻辑代码,再通过编译 ...

  2. DDD学习笔记1——分层架构

    新旧架构对比图: DDD中的基础设施层包括数据持久化(ORM数据访问),IoC容器实现,AOP实现(安全,日志记录,缓存等) Repository的接口通常放在领域层,具体实现在基础设施层 旧架构的业 ...

  3. IdentityServer4实战 - AccessToken 生命周期分析

    一.前言 IdentityServer4实战这个系列主要介绍一些在IdentityServer4(后文称:ids4),在实际使用过程中容易出现的问题,以及使用技巧,不定期更新,谢谢大家关注.使用过id ...

  4. django2.0升级日记

    1.大量的外键定义需要加on_delete参数 2.'WSGIRequest' object has no attribute 'session',这个问题是因为settings中middleware ...

  5. Spring-mvc设置@RequestMapping标签更改返回头及@RequestMapping简述

    1. 引子:设置返回头 2. 简述 3. value 4. method 5. consumes/produces 6. params 7. headers 1. 引子:设置返回头 返回JSON内容时 ...

  6. CentOS7搭建LAMP实战

    环境配置从官网下载稳定的源码包解压预编译编译编译安装启动服务 环境配置 # yum install -y vim wget links //安装一下基本工具# systemctl stop firew ...

  7. 洛谷 P1053 解题报告

    P1053 篝火晚会 题目描述 佳佳刚进高中,在军训的时候,由于佳佳吃苦耐劳,很快得到了教官的赏识,成为了"小教官".在军训结束的那天晚上,佳佳被命令组织同学们进行篝火晚会.一共有 ...

  8. Scala学习笔记:重要语法特性

    1.变量声明 Scala 有两种变量, val 和 var  val的值声明后不可变,var可变 val msg: String = "Hello yet again, world!&quo ...

  9. Java 8 异常该进

    try-with-resources 这个特性是在JDK7中出现的,我们在之前操作一个流对象的时候大概是这样的: try { // 使用流对象 stream.read(); stream.write( ...

  10. 找jar包的网站 还没用过2017.12.19

    http://www.findjar.com/index.x http://mvnrepository.com/这个比较好用