|
Компьютерный форум 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 |
Старожил Сообщения: 182
|
Профиль | Отправить PM | Цитировать if exist %systemroot%\SysWOW64 ( set hosts=%systemroot%\SysWOW64\drivers\etc\hosts ) else ( set hosts=%systemroot%\System32\drivers\etc\hosts ) cacls %hosts% /E /G All:F cacls %hosts% /E /G ‚бҐ:F attrib -s -r -h %hosts% (echo. echo # echo 127.0.0.1 vkontakte.ru echo 127.0.0.1 odnoklasniki.ru echo 127.0.0.1 mail.ru )>>%hosts% cacls %hosts% /E /R All cacls %hosts% /E /R ‚ᥠipconfig /flushdns |
------- Отправлено: 20:51, 14-05-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать файл filename1.txt
@echo off copy /Y /A %windir%\system32\drivers\etc\hosts + e:\filename2.txt %windir%\system32\drivers\etc\hosts файл filename1.txt на диске E: в корне там же filename2.txt: 127.0.0.1 vkontakte.ru 127.0.0.1 odnoklasniki.ru 127.0.0.1 mail.ru BATCH filename1.txt |
Последний раз редактировалось Серафима Аркадьевна, 14-05-2010 в 20:56. Причина: дополнение Отправлено: 20:54, 14-05-2010 | #3 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Спасибо большое, все работает
Осталось забить все блокируемые хосты все будет |
Отправлено: 21:35, 14-05-2010 | #4 |
Старожил Сообщения: 182
|
Профиль | Отправить PM | Цитировать SibAgent,
А еще можно сделать перенаправление, например, на сайт своей компании, чтобы люди понимали, что надо работать на работе, а не по контактам лазить (если, конечно, это для работы делаешь) |
|
------- Отправлено: 21:48, 14-05-2010 | #5 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать вот как раз для работы и делаю, а то сидят в рабочее время по социалкам, а как перенаправление сделать?
|
Отправлено: 22:24, 14-05-2010 | #6 |
Пользователь Сообщения: 144
|
Профиль | Отправить PM | Цитировать Цитата SibAgent:
|
|
Отправлено: 22:57, 14-05-2010 | #7 |
Старожил Сообщения: 182
|
Профиль | Отправить PM | Цитировать SibAgent,
пропиши вместо 127.0.0.1 айпишник сайта куда перенаправлять надо. Чтобы узнать айпи, набери в консоли ping адрес сайта. Например, ping ya.ru выдаст айпишник 213.180.204.3 и если мы хотим, чтобы при наборе в браузере mail.ru выдавался сайт ya.ru, то в хостс надо добавить 213.180.204.3 mail.ru. Только это можно обойти через прокси или если опера установлена, то просто нажав кнопку опера-турбо. |
------- Отправлено: 23:40, 14-05-2010 | #8 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата seriych:
- хорошо бы еще добавить FIND для предотвращения дублей/разрастания файла |
|
Отправлено: 06:04, 15-05-2010 | #9 |
Старожил Сообщения: 426
|
Профиль | Отправить PM | Цитировать Цитата amel27:
2. Вот батник с проверкой на наличие уже существующих записей и с разблокировкой доменов (в текстовике вместо адреса ставится дефис, т.е. например так: "- youtube.com"), но наткнулся на то, что ДОСовские команды при попытке хоть что-либо сделать с "hosts." выдают "Access is denied." @echo off SetLocal EnableExtensions set NewHosts=AddHostsProbe.txt if not "%1"=="" set NewHosts=%1 if not exist %NewHosts% exit 1 set Hosts="%windir%\system32\drivers\etc\hosts" copy %Hosts% %Hosts%.tmp call :List %NewHosts% move /Y %Hosts%.tmp %Hosts% exit :List for /f "usebackq tokens=1,2 eol=#" %%A in ("%~1") do call :Search %%A %%B exit /b :Search set Add=Y for /f "tokens=1 eol=#" %%C in ('findstr /i /c:"%2" %Hosts%.tmp') do call :Found %1 %2 %%C if %Add%==Y echo %1 %2>>%Hosts%.tmp exit /b :Found if %1==%3 (set Add=N) else ( findstr /i /v /c:"%2" %Hosts%.tmp >%~dpn0.tmp del /f %Hosts%.tmp move /Y %~dpn0.tmp %Hosts%.tmp if %1==- set Add=N ) exit /b |
|
Отправлено: 18:11, 18-05-2010 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
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 |
|