Вопрос (*.bat)

Форум для программистов

Сообщение paradox » Пт июл 14, 2006 2:25 pm

А не подскажет кто-нибудь, как получить в *.bat файле IP компа?

Другими словами - есть *.bat, в нем прописаны на выполнение некоторые процессы и вот по завершении их нужно, чтоб в файл *.txt поместилась информация о компе, в частности IP этого компа (на котором *.bat отработал).
Если Вам нужна трава, есть всегда у нас она!!
paradox
Ст. лейтенант
 
Сообщений: 149
Зарегистрирован: Сб май 31, 2003 8:17 pm
Пункты репутации: 0

Сообщение Леха » Пт июл 14, 2006 3:36 pm

В винде есть такая утилита ipconfig которая выдает информацию об сетевых адапторах. Как оттуда вырезать информацию сказать не могу, нету в винде grep, sed, awk.
Леха
Полковник
 
Сообщений: 1261
Зарегистрирован: Чт мар 20, 2003 8:52 pm
Откуда: Россия, Москва, Улица, Дом, Квартира
Пункты репутации: 0

Сообщение paradox » Пт июл 14, 2006 3:42 pm

Не, ipconfig, конечно можно, но в данной задаче это крайний метод, ибо гиморно - в том файле помимо IP еще куча информации собирается, поэтому придется втыкать туда всю! инфу из ipconfig, потом не нужное вырезать и т.д., в общем гиморно )

А нет какой-нибудь одной команды, которая IP выдаст?
как, например, %computername%
Если Вам нужна трава, есть всегда у нас она!!
paradox
Ст. лейтенант
 
Сообщений: 149
Зарегистрирован: Сб май 31, 2003 8:17 pm
Пункты репутации: 0

Сообщение DruiD » Пт июл 14, 2006 4:49 pm

2paradox
нет, команды такой нет. А через переменные окружения не катит потому что ip может быть несколько, как минимум лупбэк.
<!--QuoteBegin-Леха+Jul 14 2006, 18:36--><div class='quotetop'>QUOTE(Леха @ Jul 14 2006, 18:36)</div><div class='quotemain'><!--QuoteEBegin-->нету в винде grep, sed, awk.
[right][snapback]211529[/snapback][/right]
<!--QuoteEnd--></div><!--QuoteEEnd-->
точно нет? странно что не портанули :\
"Вы можете тысячу раз обвинять нас, богиня вечного суда истории усмехнется, разорвет приговор вашего суда, и, после, объявит нас свободными".
А. Гитлер, Mein Kampf.
DruiD
Полковник
 
Сообщений: 1171
Зарегистрирован: Чт июн 02, 2005 3:13 pm
Откуда: Зеленоград
Пункты репутации: 0

Сообщение paradox » Пт июл 14, 2006 6:01 pm

блин, плохо, что нет.
значит придется идти гиморным путем =(

P.S. IP один на компе
Если Вам нужна трава, есть всегда у нас она!!
paradox
Ст. лейтенант
 
Сообщений: 149
Зарегистрирован: Сб май 31, 2003 8:17 pm
Пункты репутации: 0

Сообщение earl » Пт июл 21, 2006 5:24 pm

2paradox:
Может, проще тебе будет утилитку в Дельфях "нарисовать"? ...Там и всего-то, по большому счёту, три строчки:
Код: выделить все
Uses WinSock;
...
Var
 I     : Integer;
 Name : Array [0..MAX_COMPUTERNAME_LENGTH] Of Char;
 P     : PHostEnt;
 MyIP   : String;
...
Procedure TForm1.FormCreate(Sender: TObject);
Begin
...
I:=WSAStartup ($0101, WSAData);
If I <> 0 Then Begin
   Case I Of
     WSASYSNOTREADY     : Error('Неправильная настройка сети!');
     WSAVERNOTSUPPORTED : Error('Версия библиотеки WinSock!');
     WSAEINPROGRESS     : Error('Ошибка при открытии сети!');
     WSAEPROCLIM        : Error('Слишком много открытых сетевых подключений!');
     WSAEFAULT          : Error('Хохма, конечно, но версия библиотеки WinSock слишком новая...');
     End; {Case}
   MessageDlg('Пригласите системного администратора.', mtError, [mbOK], 0);
   Close;
   End;

GetHostName(Name,  MAX_COMPUTERNAME_LENGTH);
P := GetHostByName(Name);
MyIP := Inet_ntoa(PInAddr(P.h_addr^)^);
...
End; {Procedure}

- А уж эту переменную в любой текстовый файл пихай... Собственно, тебе только три последние строчки нужны, проверку сети не обязательно...
earl
Подполковник
 
Сообщений: 614
Зарегистрирован: Ср июн 19, 2002 7:04 pm
Откуда: Череповец
Пункты репутации: 0

Сообщение Леха » Сб июл 22, 2006 7:49 am

<!--QuoteBegin-DruiD+Jul 14 2006, 20:49--><div class='quotetop'>QUOTE(DruiD @ Jul 14 2006, 20:49)</div><div class='quotemain'><!--QuoteEBegin-->2paradox
ОЕФ, ЛПНБОДЩ ФБЛПК ОЕФ. б ЮЕТЕЪ РЕТЕНЕООЩЕ ПЛТХЦЕОЙС ОЕ ЛБФЙФ РПФПНХ ЮФП ip НПЦЕФ ВЩФШ ОЕУЛПМШЛП, ЛБЛ НЙОЙНХН МХРВЬЛ.

ФПЮОП ОЕФ? УФТБООП ЮФП ОЕ РПТФБОХМЙ :\
[right][snapback]211538[/snapback][/right]
<!--QuoteEnd--></div><!--QuoteEEnd-->
лПОЕЮОП РПТФЩ ЕУФШ.. с ЙНЕА Ч ЧЙДХ ВБЪПЧЩК УПУФБЧ <!--emo&:)-->[img]style_emoticons/<#EMO_DIR#>/smile.gif[/img]<!--endemo-->
Леха
Полковник
 
Сообщений: 1261
Зарегистрирован: Чт мар 20, 2003 8:52 pm
Откуда: Россия, Москва, Улица, Дом, Квартира
Пункты репутации: 0

Сообщение sm@rt » Сб июл 22, 2006 10:20 am

2DruiD grep точно есть. Могу скинуть. awk тоже гляну.
Красота и массовые расстрелы спасут мир.
sm@rt
Генерал-майор
 
Сообщений: 2935
Зарегистрирован: Вт фев 25, 2003 4:42 pm
Пункты репутации: 0

Сообщение DruiD » Сб июл 22, 2006 10:49 am

2sm@rt
druid на foobar2000.ru
Буду весьма благодарен, полезная вещь.
"Вы можете тысячу раз обвинять нас, богиня вечного суда истории усмехнется, разорвет приговор вашего суда, и, после, объявит нас свободными".
А. Гитлер, Mein Kampf.
DruiD
Полковник
 
Сообщений: 1171
Зарегистрирован: Чт июн 02, 2005 3:13 pm
Откуда: Зеленоград
Пункты репутации: 0

Сообщение paradox » Сб сен 09, 2006 11:14 am

Пасиб, парни! =)
Проблема себя исчерпала!

Тут другой вопрос - кто-нибудь знает, как убивать процесс из командной строки?
Это все для тех же батников надо.
Последний раз редактировалось paradox Сб сен 09, 2006 11:15 am, всего редактировалось 1 раз.
Если Вам нужна трава, есть всегда у нас она!!
paradox
Ст. лейтенант
 
Сообщений: 149
Зарегистрирован: Сб май 31, 2003 8:17 pm
Пункты репутации: 0

Сообщение earl » Сб сен 09, 2006 3:05 pm

2paradox:
...Стандартной системной программой:
Код: выделить все
c:\WINDOWS\system32>taskkill /?

TASKKILL [/S <система> [/U <пользователь> [/P [<пароль>]]]]
        { [/FI <фильтр>] [/PID <процесс> | /IM <образ>] } [/F] [/T]

Описание:
 Эта команда позволяет завершить один или несколько процессов.
 Процесс может быть завершен по имени образа или по идентификатору процесса.
earl
Подполковник
 
Сообщений: 614
Зарегистрирован: Ср июн 19, 2002 7:04 pm
Откуда: Череповец
Пункты репутации: 0

Сообщение paradox » Вс сен 10, 2006 7:00 pm

ВО!!
Спасибо тебе, добрый человек! =)
Если Вам нужна трава, есть всегда у нас она!!
paradox
Ст. лейтенант
 
Сообщений: 149
Зарегистрирован: Сб май 31, 2003 8:17 pm
Пункты репутации: 0


Вернуться в Программирование

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

cron