Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
help, аналог grep в винде |

12.04.2007, 17:42
|
|
Banned
Регистрация: 05.12.2005
Сообщений: 982
Провел на форуме: 4839935
Репутация:
1202
|
|
help, аналог grep в винде
собственно, ситуация такая:
есть локальная сеть с подсетями
есть роутер, чтоб связь была и не глючила
пользователи один раз запукают routing.bat c содержимым:
route add 192.168.0.0 mask 255.255.0.0 servername -p
и до перестановки винды живут счастливо...
Проблема:
Теперь требутся, чтобы пользователь, находящийся в первой подсети прописал у себя только
route add 192.168.0.0 mask 255.255.0.0 192.168.1.1 -p
во второй только:
route add 192.168.0.0 mask 255.255.0.0 192.168.2.1 -p
в третьей только:
route add 192.168.0.0 mask 255.255.0.0 192.168.3.1 -p
и так далее.
Требуется написать бат скриптик, который бы определял текущую подсеть юзверя и выдавал ему соответствующую подсеть роутинга.
тоесть нужно каким то макаром выдрать подсеть через ipconfig или net и исходя из этого производить верную прописку.
как это сделать в виндовой консоли - я теряюсь.
с меня плюсы.
|
|
|

12.04.2007, 17:49
|
|
Moderator - Level 7
Регистрация: 21.03.2007
Сообщений: 1,200
Провел на форуме: 7134052
Репутация:
1204
|
|
нашел непосредственно только аналог grep - findstr.exe, лежит в system32. дальше думать лень =(
|
|
|

12.04.2007, 18:41
|
|
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме: 5352530
Репутация:
2062
|
|
решение, мягко говоря через жопу, не проще ли один раз настроить? или всем обьяснить чтоб руками сделали?
я вижу только 2 варианта, и то, требующее доработки, первый что-то типа
C:\>REGEDIT /E c:\filename.REG HKEY_LOCAL_MACHINE\SYSTEM\...
в итоге получаем список ключей, отвечающих за настройку сети, вот только как выдрать отдельный я не знаю.
Или как уже рекомендовали
ipconfig | findstr "Gateway"
в обоих случаях айпишник надо каким-то образом еще выдрать
Последний раз редактировалось Thanat0z; 12.04.2007 в 18:51..
|
|
|

12.04.2007, 19:22
|
|
Участник форума
Регистрация: 04.02.2007
Сообщений: 120
Провел на форуме: 306837
Репутация:
36
|
|
help, аналог grep в винде
есть порт grep под windows.
скачать можно тут:
http://www.weihenstephan.de/~syring/win32/
зы плюсы мне не нужны!
|
|
|

12.04.2007, 19:27
|
|
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме: 5352530
Репутация:
2062
|
|
Сообщение от ShadOS
а зачем каждый раз скриптик запускать?
достаточно один раз выполнить (если мне не изменяет память - ключ -p, я под никсами сижу):
route -p add ...
и после перезагрузки маршрут сохранится. Аналог grep в винде тоже есть, его можно найти в составе gnu win32 utils - Гугль в помощь. Но что-то подсказывает мне что есть решения проще, чем grep.
UPD: сорри, элект ключик -p не забыл, это я не заметил.
дело в том, как я понял, что ему нужно сделать стандартными средствами. Мне допустим всегда пофиг, мне легче поставить Цигвин и не мучаться, а тут видимо поставить на десяток или сотни машинок греп проблематично
|
|
|

12.04.2007, 21:13
|
|
Участник форума
Регистрация: 05.09.2006
Сообщений: 184
Провел на форуме: 888851
Репутация:
203
|
|
Наверно что то вроде этого:
Код:
echo off
ipconfig >22.txt
for /F "skip=9 tokens=2* usebackq delims=:" %%i IN (22.txt) DO set IP=%%i
route add 192.168.0.0 mask 255.255.0.0 %IP% -p
echo %IP%
|
|
|

13.04.2007, 11:39
|
|
Banned
Регистрация: 05.12.2005
Сообщений: 982
Провел на форуме: 4839935
Репутация:
1202
|
|
о, да!
Код:
echo off
ipconfig | findstr "192.168.*.1" > ipconfig.txt
for /F "skip=2 tokens=2* delims=:" %%i IN (ipconfig.txt) DO set IP=%%i
route add 192.168.0.0 mask 255.255.0.0 %IP% -p
echo %IP%
всем спасибо! =)
+++++++++++
|
|
|

13.04.2007, 13:21
|
|
Участник форума
Регистрация: 05.09.2006
Сообщений: 184
Провел на форуме: 888851
Репутация:
203
|
|
еще навено полезнее будет
echo %IP%
заменить на: del ipconfig.txt
|
|
|

13.04.2007, 15:58
|
|
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме: 5352530
Репутация:
2062
|
|
show-ip-reg.bat
Код:
@echo off
for /f "usebackq tokens=1-3" %%A in (`"reg query HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{KEY} /v dhcpdefaultgateway|findstr /i dhcpdefaultgateway"`) do (for /f "usebackq delims=\ tokens=1-3" %%F in ('%%C') do (echo %%F))
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|