2013-03-19 4 views
-3

Привет всем Я только что закончил писать более ранний пакетный файл с кодировкой 1800+ ... Что он делает, он блокирует веб-сайт и разблокирует их. Теперь функции - это то, что вы можете войти на сайт и заблокировать его, и вы также можете заблокировать целую кучу. Теперь вы можете указать в имени веб-сайта, и он будет разблокирован или вы сможете разблокировать их все, удалив в файл. Теперь есть новая функция ... Перенаправление, я успешно сделал так, чтобы с вами были ребята :). Теперь, что это делает, у вас есть 2 варианта, которые делают сайт перенаправлен на другой сайт или перенаправляют на страницу «Невозможно подключиться». Да, поэтому я спросил вас, как извлечь IP-адрес, когда вы пинговали веб-сайт, а затем мой progrm хранит IP-адрес в переменной. Таким образом, вы должны ввести веб-сайт, например. www.facebook.com, и он будет пинговать веб-сайт и получать IP-аддоны и хранить его в виде. Но это проблема при вводе веб-сайта для разблокировки. Поэтому я использую команду findstr для поиска заблокированного веб-сайта и удаления его, но это многоуровневый hasale. Он разблокирует веб-сайт, который должен перенаправить IP-адрес в него.CMD моя программа (она должна быть длиной 15 символов)

173.252.110.27 www.facebook.com www.google.co.za 
173.252.110.27 www.facebook.com www.youtube.com 

и когда он перенаправляет на «Невозможно подключиться страницу» (локальный), было бы, как это ...

127.0.0.1 www.miniclip.com. 

Теперь это моя проблема CMD не знает что заблокированный сайт и который должен перенаправить веб-сайт. Поэтому мне нужно, чтобы кто-то помог мне с небольшим кодом, и да, как только это будет сделано, я обещаю дать вам ссылку, чтобы вы могли скачать эту программу, которая потребовала мне около 173 часов, потому что мне пришлось много и много мозгового штурма и мышления а не просто набирать код из верхней части головы. Теперь вот код я застрял ...

if %directstate% == uilocalhost (
findstr /i %IPaddress% %%A >>%hosts% 
) 

if %directstate% == uiwebsite (
findstr /i %IPaddress% %directmode% %%A >>%hosts% 
) 

directstate varible является varible то есть возможность перенаправления на веб-сайт или локального хоста

и если directstate varible установлен на веб-сайте переменная Ipaddress устанавливается на извлеченном IP-адресе ping, и если directstate находится на локальном хосте, IP-адрес устанавливается на 127.0.0.1, а переменная hosts - там, где установлен каталог файла hosts.

Вот весь код, чтобы разблокировать сайт ...

::Uninstall Selected Bocked Website START 
:unblockselectedloadmenu 
echo [%time%] [UNBLOCK SELECTED MENU STATUS: LOADED MENU] >>%logdir%\WEBMATRIXLOG.log 
:unblockselected 
set unblockURL=unblockURL 
mode 52,22 
echo -UNBLOCK SELECTED 
echo     ----MY PROGRAM---- 
echo. 
echo Listing Blocked Addresses... 
type %hosts% 
echo. 
echo b/back 
echo Enter the website to unblock: 
set /p unblockURL=www. 
if %unblockURL% == unblockURL (goto unblockselected) else if %unblockURL% == b (
echo [%time%] [UNINSTALL SELECTED MENU STATUS: USER BACKED OUT FROM UNINSTALL SELECTED MENU] >>%logdir%\WEBMATRIXLOG.log 
goto mainmenu) else (
echo [%time%] [UNINSTALL SELECTED MENU STATUS: INPUT WEBSITE ADDRESS: www.%unblockURL%] >>%logdir%\WEBMATRIXLOG.log) 
echo. 
echo Processing... 
findstr /i "%unblockURL%" %hosts% >nul 
IF %ERRORLEVEL% NEQ 0 (
echo Address is already uninstalled... 
ping localhost -n 3 >nul 
echo [%time%] [UNINSTALL SELECTED MENU STATUS: ADDRESS IS ALREADY UNINSTALLED] >>%logdir%\WEBMATRIXLOG.log 
goto mainmenu) 
attrib -r %hosts% 
FOR %%A IN (
www.%unblockURL% 
) DO (
MOVE %hosts% hosts.bak >NUL 
FINDSTR /V /C:"%%A" hosts.bak > %hosts% 
DEL /F /Q hosts.bak) 
attrib +r %hosts% 
echo DONE! - Cleared Selected Blocked Address! 
ping localhost -n 2 >nul 
echo You may need to restart browser 
ping localhost -n 3 >nul 
echo [%time%] [UNINSTALL SELECTED MENU STATUS: REMOVED WEBSITE ADDRESS: www.%unblockURL%] >>%logdir%\WEBMATRIXLOG.log 
cls 
goto mainmenu 
::Uninstall Selected Bocked Website END 

Пожалуйста, помогите мне, если вы понимаете, о чем я говорю. Спасибо всем, кто сделает это возможным. Помните, что вы получите копию этой программы, как только это будет сделано. Возможно, через несколько дней :)

+2

Ваш вопрос повсюду; пожалуйста, отделите его на единый, согласованный вопрос. В чем именно проблема, с которой вы сталкиваетесь, какая ошибка вы получаете, и где в коде, по вашему мнению, проблема? – LittleBobbyTables

+0

Ваш вопрос слишком длинный, я не могу прочитать его до Пасхи ... – Endoro

+0

Когда я вхожу на сайт, чтобы разблокировать, то есть .. 173.252.110.27 www.facebook.com www.google.co.za 173.252.110.27 www. youtube.com www.facebook.com.И когда я разблокирую его с помощью функции разблокировки, он удалит все URL-адреса перенаправления не только с левой стороны. Мне жаль, что это очень трудно объяснить :) – Adrianvdh

ответ

2

Я подозреваю, что эту линию:

findstr /i %IPaddress% %directmode% %%A >>%hosts% 

Найдет все строки, содержащие %IPaddress%ИЛИ%directmode%. Из вашего комментария not just the ones on the left hand side Я бы закончил, что вы хотите найти строки, содержащие буквально «% IPaddress%% directmode%» - с пространством между ними.

Попробуйте

findstr /i /c:"%IPaddress% %directmode%" %%A >>%hosts% 
+0

СПАСИБО ВАС, СПАСИБО ВАС, СПАСИБО ВАС. :) – Adrianvdh

Смежные вопросы