Code: Select all
@Echo off & setLocal enableDELAYedeXpansioN
set "Hosts_file=%WinDir%\system32\drivers\etc"
set "Remove_Entry=# 127.0.0.1 localhostTest" & CALL :remove_host_entry
:remove_host_entry
pushd %Hosts_file% & find /i /v "%Remove_Entry%" hosts > # & move/y # hosts
GOTO :EOF
pause
It removes Hosts entry prefectly, but there is one problem: Everytime i execute this Batch code - it keeps adding "---------- HOSTS"? I need to stop it. Can anyone help?
Code: Select all
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
---------- HOSTS
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost