|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Запись в файл hosts с помощью bat-файла |
|
CMD/BAT - [решено] Запись в файл hosts с помощью bat-файла
|
Новый участник Сообщения: 3 |
Профиль | Отправить PM | Цитировать Доброго времени суток!
Помогите написать батник который будет вносить указанные домены с ай-пи 127.0.0.1 в файл hosts, например такого содержания: 127.0.0.1 vkontakte.ru 127.0.0.1 odnoklasniki.ru 127.0.0.1 mail.ru Заранее спасибо. |
|
Отправлено: 19:47, 14-05-2010 |
Ветеран Сообщения: 2196
|
Профиль | Отправить PM | Цитировать |
Отправлено: 17:50, 18-06-2011 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Сообщения: 53441
|
Профиль | Отправить PM | Цитировать |
Отправлено: 17:56, 18-06-2011 | #12 |
Ветеран Сообщения: 2196
|
Профиль | Отправить PM | Цитировать Petya V4sechkin, спасибо!
Цитата Petya V4sechkin:
|
|
Отправлено: 18:12, 18-06-2011 | #13 |
Старожил Сообщения: 239
|
Профиль | Сайт | Отправить PM | Цитировать Не знаю в этой теме надо об этом писать или новую лучше создать....
В общем вопрос: Как CMD файлом добавлять строки в файл C:\Windows\System32\drivers\etc\hosts в Windows 7? Семёрка упорно не даёт редактировать этот файл. Запуск CMD файла от имени админа не помогает. |
------- Отправлено: 23:20, 10-02-2012 | #14 |
Старожил Сообщения: 239
|
Профиль | Сайт | Отправить PM | Цитировать Так первый вопрос снимается, на системе с отключенным контролем учётных записей И БЕЗ АНТИВИРУСА данный файл заменяется спокойно.
Теперь вопрос уже более по данной теме, как сделать так чтобы нужные строки вносились в данный файл не заменяя весь файл, то есть если до этого там уже были какие-то адреса, то они не должны удаляться, CMD должен ДОПИСЫВАТЬ нужные адреса после уже имеющихся в файле hosts, ну и конечно при повторном запуске CMD записи не должны дублироваться, то есть если произошёл повторный запуск CMD то изменений в hosts не будет внесено. Я не силён в командах CMD, прочёл данную тему и плохо понял что делают те команды... |
------- Отправлено: 00:01, 11-02-2012 | #15 |
Ветеран Сообщения: 2196
|
Профиль | Отправить PM | Цитировать Цитата Shpionus:
call:Install ххх.com call:Install www.ххх.com :Install setlocal enableextensions enabledelayedexpansion set sHostFile=%SystemRoot%\System32\drivers\etc\hosts echo.>>"%sHostFile%" set sHost=%~1 if defined sHost ( for /f "usebackq eol=# tokens=1,2" %%i in ("%sHostFile%") do ( if /i "%%j" equ "%sHost%" ( set /a bFound = 1 set sAddress=%%i ) ) if defined bFound ( echo.Host [%sHost%] ^(!sAddress!^) already present in [%sHostFile%] ) else ( echo.Add host [%sHost%] ^(127.0.0.1^) into [%sHostFile%] echo.127.0.0.1 %sHost%>>"%sHostFile%" ) ) else ( echo.Usage: "%~nx0" ^<hostname^> ) endlocal GoTo:EOF |
|
Отправлено: 01:00, 11-02-2012 | #16 |
Пользователь Сообщения: 136
|
Профиль | Отправить PM | Цитировать Подскажите пожалуйста, как батником добавить строку 2м столбцом который будет размером с первый? Например:
03343532 000000 03343532 000000 03343532 000000 03343532 000000 ... 000000 - добавленная |
Последний раз редактировалось TakTo, 09-03-2012 в 18:18. Отправлено: 17:45, 09-03-2012 | #17 |
Новый участник Сообщения: 1
|
Профиль | Сайт | Отправить PM | Цитировать http://forum.oszone.net/showthread.p...25#post2260325
Цитата NiOl:
|
|
Отправлено: 11:11, 23-11-2013 | #18 |
Старожил Сообщения: 177
|
Профиль | Отправить PM | Цитировать sov44, А можно прокомментировать для тех не разбирается в батниках, например чтоб можно было сделать как внедрение записей так и их удаление.
|
Отправлено: 16:04, 28-02-2014 | #19 |
Ветеран Сообщения: 2196
|
Профиль | Отправить PM | Цитировать joystick8000, готовый батник, который добавляет записи в hosts и создаёт рядом батник отката. Пробуйте.
@Echo Off setlocal EnableDelayedExpansion set sHostFile=%SystemRoot%\System32\drivers\etc\hosts :: добавление записи в hosts call :Install 1111.com :: пишем скрипт отката записи в hosts call :cl 1111.com exit /b :Install set sHost=%~1 if defined sHost ( for /f "usebackq eol=# tokens=1,2" %%i in ("%sHostFile%") do ( if /i "%%j"=="%sHost%" Set flag=1 ) If not defined flag (echo.127.0.0.1 %sHost%>>"%sHostFile%") ) goto :eof :cl ( echo @Echo Off echo setlocal enabledelayedexpansion echo. echo set sHostFile=%%SystemRoot%%\System32\drivers\etc\hosts echo set sHost=%~1 echo. echo for /f "tokens=1* delims=]" %%%%a in ^('find /v /n "" ^^^<"%%sHostFile%%"'^) do ^( echo echo.%%%%b ^| ^>nul find /i "%%sHost%%" ^|^| ^(echo.%%%%b^>^>"%%SystemRoot%%\System32\drivers\etc\temp_host"^) echo ^) echo del /f /q "%%sHostFile%%" echo ren "%%SystemRoot%%\System32\drivers\etc\temp_host" "hosts" echo exit /b )>cl_hosts.cmd goto :eof |
Отправлено: 20:47, 28-02-2014 | #20 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] резервное копирование с помощью bat-файла | vagner_HATE | Скриптовые языки администрирования Windows | 11 | 23-07-2011 19:50 | |
CMD/BAT - Определить ip адрес с помощью bat файла и при совпадении запустить прогу | 4zz | Скриптовые языки администрирования Windows | 2 | 03-03-2010 02:58 | |
CMD/BAT - [решено] Как с помощью bat-ника записать названия папок в текстовый файл? | Nun-Nun | Скриптовые языки администрирования Windows | 9 | 23-02-2010 20:15 | |
[решено] как добавить путь к текущей директории в reg файл из bat файла ? | mitiya | Автоматическая установка приложений | 7 | 27-03-2008 16:12 | |
[решено] Пропадает запись в HOSTS | Citron | Microsoft Windows 2000/XP | 3 | 13-05-2006 17:59 |
|