API for manage hosts file
Project description
hostsmgr (Hosts Manager)
API for manage hosts file
- Free software: Apache-2.0
- Documentation: https://hostsmgr.readthedocs.io.
Features
Usage
from hostsmgr import HostsMgr from hostsmgr.hostsmgr import guess_hosts_path from hostsmgr.conditions import Any, All, IPAddress, Host, InlineComment mgr = HostsMgr() # Load system hosts file mgr.load(guess_hosts_path()) # Save hosts to another place (Must open with text mode !) mgr.save(open('/etc/hosts.old', 'w')) # Save hosts to string with hosts file format hosts_string = mgr.saves() # Find all hosts entries that with 127.0.0.1 address entries = mgr.find(IPAddress('127.0.0.1')) # Find all entries that contained specific host entries = mgr.find(Host('localhost')) # Find all entries that contained specificed ip address and host both entries = mgr.find(IPAddress('127.0.0.1') & Host('localhost')) # Find all entries that contained either hosts entries = mgr.find(Host('ip6-localhost') | Host('localhost')) # Find all entries that contained either hosts, another method entries = mgr.find(Any(Host('ip6-localhost'), Host('localhost'))) # Find all entries that contained both hosts entries = mgr.find(Host('ip6-localhost') & Host('localhost')) # Find all entries that contained both hosts, another method entries = mgr.find(All(Host('ip6-localhost'), Host('localhost'))) # Find all entries that contained target inline comment entries = mgr.find(InlineComment('THIS_IS_A_TAG')) # Find only one entry that contained target inline comment entries = mgr.find(InlineComment('THIS_IS_A_TAG'), at_most=1) # Remove an entry that found by find() mgr.remove(entry) # Remove all hosts from hosts entries mgr.remove_hosts(['localhost', 'ip6-localhost']) # Remove all entries by inline comment exactly matched mgr.remove_by_inline_comment(InlineComment('TAG_FOR_EXAMPLE')) # Remove all entries by inline comment partial matched mgr.remove_by_inline_comment(InlineComment('TAG_FOR_EXAMPLE', partial=True))
Credits
This package was created with Cookiecutter and the PyPackageTemplate project template.
History
0.0.1 (2018-04-15)
- First release on PyPI.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
hostsmgr-0.2.5.tar.gz
(20.4 kB
view hashes)