Нужно написать bat для виндов.

Бродяга
Уже с Приветом
Posts: 16086
Joined: 22 Apr 2003 17:57
Location: Колыбель

Нужно написать bat для виндов.

Post by Бродяга »

Привет народ,
сегодня руководство озадачило. нужно простой bat file для виндов
telnet x.x.x.x 80
<wait for a response 10 seconds>
Then get http
Then <crtl c>
Save output to the file.
Реально ли такое сделать в виндах?
Бог создал людей разными, Линкольн дал людям свободу, а Кольт всех уравнял.
ig
Уже с Приветом
Posts: 491
Joined: 09 Apr 2000 09:01
Location: Tigard, OR

Post by ig »

<a href="http://expect.nist.gov" target="_blank">expect</a> для Windows?
User avatar
A. Fig Lee
Уже с Приветом
Posts: 12072
Joined: 17 Nov 2002 03:41
Location: английская колония

Post by A. Fig Lee »

не-нене.. Ждем тенгиза и пусть расскажет как легко ето сделать на Виндовс. А то в теории много защитников у МС.
Верить нельзя никому - даже себе. Мне - можно!
Слiн
Уже с Приветом
Posts: 1407
Joined: 07 Jan 2003 19:51
Location: НорКа

Post by Слiн »

Ну типа

в файл getstuff.js:

// Create an xmlhttp object:
var xml = WScript.CreateObject("Microsoft.XMLHTTP")

// Open the connection to the remote server.
xml.Open("GET", "http://www.linux.com", false)

// Actually Sends the request and returns the data:
xml.Send()

//write result into a file
var fs=WScript.CreateObject("Scripting.FileSystemObject")
var f=fs.OpenTextFile("c:\\stuff\\shit.txt",8,true)
f.Write(xml.responseText)
f.Close();

запускать из командной строки

csсript getstuff.js
User avatar
KVA
Уже с Приветом
Posts: 5347
Joined: 03 Feb 1999 10:01
Location: NJ, USA

Post by KVA »

Если все что надо сгрузить данные по HTTP в файл, то что-то типа такого.

Файл get.js:

Code: Select all

var xmlhttp = WScript.CreateObject("Microsoft.XMLHTTP");
   
xmlhttp.open("GET","http://www.yahoo.com", false);
xmlhttp.send();

var fso = WScript.CreateObject("Scripting.FileSystemObject");
var f = fso.CreateTextFile("C:\\TEMP\\yahoo.txt", true);

f.write(xmlhttp.ResponseText);
f.close();


Запуск: cscript get.js
User avatar
KVA
Уже с Приветом
Posts: 5347
Joined: 03 Feb 1999 10:01
Location: NJ, USA

Post by KVA »

Синхронненько, однако ответили .... :mrgreen: :mrgreen: :mrgreen:
User avatar
tengiz
Уже с Приветом
Posts: 4468
Joined: 21 Sep 2000 09:01
Location: Sammamish, WA

Post by tengiz »

A. Fig Lee wrote:не-нене.. Ждем тенгиза и пусть расскажет как легко ето сделать на Виндовс. А то в теории много защитников у МС.

Я таких страшных слов как telnet x.x.x.x или get http не знаю, а также не понимаю, что значит ctrl-c в этом контексте. а вообще - я конечно догадывался, что А. Фиг Лее на редкость мелочная зануда в любом вопросе - но чтобы настолько??? а windows я не "защищаю", я в ней каждый день работаю и не жалуюсь. "защищаю" же время от времени тех доверчивых, которым пытаются развешивать лапшу на уши невежественной или недобросовестной околотехнической халтуры. так как windows я знаю лучше, чем фреебздю, то и говорю я в основном о ней. если бы я знал линюх, то его бы тоже "защищал" когда следует.
Cheers
Бродяга
Уже с Приветом
Posts: 16086
Joined: 22 Apr 2003 17:57
Location: Колыбель

Post by Бродяга »

tengiz wrote:
A. Fig Lee wrote:не-нене.. Ждем тенгиза и пусть расскажет как легко ето сделать на Виндовс. А то в теории много защитников у МС.

Я таких страшных слов как telnet x.x.x.x или get http не знаю, а также не понимаю, что значит ctrl-c в этом контексте. а вообще - я конечно догадывался, что А. Фиг Лее на редкость мелочная зануда в любом вопросе - но чтобы настолько??? а windows я не "защищаю", я в ней каждый день работаю и не жалуюсь. "защищаю" же время от времени тех доверчивых, которым пытаются развешивать лапшу на уши невежественной или недобросовестной околотехнической халтуры. так как windows я знаю лучше, чем фреебздю, то и говорю я в основном о ней. если бы я знал линюх, то его бы тоже "защищал" когда следует.

tengiz как штатными средствами в виндах зайти телнетом на 80й порт машины, get http и выйти из телнета. результаты сбросить в текстовый файл?
Бог создал людей разными, Линкольн дал людям свободу, а Кольт всех уравнял.
User avatar
tengiz
Уже с Приветом
Posts: 4468
Joined: 21 Sep 2000 09:01
Location: Sammamish, WA

Post by tengiz »

Бродяга wrote:tengiz как штатными средствами в виндах зайти телнетом на 80й порт машины, get http и выйти из телнета. результаты сбросить в текстовый файл?

А WSH скрипты, который уже выложили не делают то что надо? Я серьёзно спрашиваю, потому что до меня не доходит, как через telnet сессию можно читать http - я конечно балда в web технологиях, но вроде это разные протоколы и разные TPC порты. Возможно я чего-то фундаментально не понимаю?
Cheers
User avatar
tengiz
Уже с Приветом
Posts: 4468
Joined: 21 Sep 2000 09:01
Location: Sammamish, WA

Post by tengiz »

<added>

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

</added>
Cheers
Hamster
Уже с Приветом
Posts: 11475
Joined: 20 Nov 2000 10:01
Location: Escondido, CA

Post by Hamster »

tengiz wrote:Я серьёзно спрашиваю, потому что до меня не доходит, как через telnet сессию можно читать http - я конечно балда в web технологиях, но вроде это разные протоколы и разные TPC порты. Возможно я чего-то фундаментально не понимаю?


Протокола как такового там нет. Достаточно зайти по telnet на 80-й порт, послать команду

GET / HTTP/1.0 \n\n

( \n = CR/LF ), в ответ telnet выдаст сайт. Через echo xxx | telnet это почему-то не работает.
User avatar
tengiz
Уже с Приветом
Posts: 4468
Joined: 21 Sep 2000 09:01
Location: Sammamish, WA

Post by tengiz »

Hamster, а что нужно нужно набать в интерактивной telnet сессии, чтобы это выполнить?
Cheers
Hamster
Уже с Приветом
Posts: 11475
Joined: 20 Nov 2000 10:01
Location: Escondido, CA

Post by Hamster »

Это и набрать.
GET / HTTP/1.0 <enter> <enter>

GET /index.htm HTTP/1.0 <enter> <enter>
User avatar
KVA
Уже с Приветом
Posts: 5347
Joined: 03 Feb 1999 10:01
Location: NJ, USA

Post by KVA »

Так вам шашечки или ехать? Скрипты делают то что вам надо или вы именно через telnet хотите?
User avatar
tengiz
Уже с Приветом
Posts: 4468
Joined: 21 Sep 2000 09:01
Location: Sammamish, WA

Post by tengiz »

Мне ничего не надо :) - мне просто любопытно.
Cheers

Return to “Вопросы и новости IT”