Portaal Portaal Pingviini veeb foorumi pealeht
  Viki  |  IRC  |  Otsing  |  Küsimused ja vastused  |  Profiil  |  Privaatsõnumite vaatamiseks logi sisse  | Logi sisse või Registreeru
<empty>
Vaata järgmist teemat
Vaata eelmist teemat

Postita uus teemaVasta teemale
Autor Sõnum
priit
Vana Pingviin
Vana Pingviin


Vanus: 39
Liitunud: 04.08.2005
Postitused: 521
Asukoht: Tartu
Distributsioon: CentOS / OS X
estonia.gif
postituspostitatud: 12.01.2007, 20:54  postituse pealkiri:  (teema puudub)  

pigem oli mõeldud seda, et muudad vastavat klaverilaotuse faili, et see püstkriips sul kuskil figureeriks, kasvõi x-i taga.


imre
Vana Pingviin
Vana Pingviin



Liitunud: 16.08.2005
Postitused: 2648
Asukoht: Saku kant
Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 12.01.2007, 21:02  postituse pealkiri:  (teema puudub)  

Spott ,mu läpatsil on sedasi igatahes.
http://pingviin.org/album_showpage.php?pic_id=132

_________________
Enne teema püstitamist kasutage OTSINGUT
Küsi targalt: Infot siit!
Kui aru ei saa, siis küsi.

spott
Admin
Admin


Vanus: 43
Liitunud: 04.06.2005
Postitused: 8853

Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 12.01.2007, 21:37  postituse pealkiri:  (teema puudub)  

imre kirjutas:
Spott ,mu läpatsil on sedasi igatahes.
http://pingviin.org/album_showpage.php?pic_id=132

mul seda klahvi pole, kuid ma sain | tänu Hardi õpetusele.

Seega selle püstkriipsu teema võib lõpetada Smile
Skriptid edasi Smile

_________________
Tellige endale sünnipäevaks, sõbrapäevaks või muuks tähtpäevaks kingitus: Kingitused internetist - NetiKink.eu

imre
Vana Pingviin
Vana Pingviin



Liitunud: 16.08.2005
Postitused: 2648
Asukoht: Saku kant
Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 17.07.2008, 21:27  postituse pealkiri:  (teema puudub)  

No kes oskab kosta või miskit kuskile pista:
dump faili asji ilusi läheb, aga telneti "output" täiesti null!

[code]
#!/usr/bin/perl
use Net::Telnet ();
#$host on ruuteri IP aadress
my $host = "192.168.1.254";
$t = new Net::Telnet (Timeout => 1,Prompt => '/$ $/i', dump_log => "/home/imre/xxxxx.html");
$t->open($host);
$t->waitfor('/: $/i');
$t->print("Administrator");
$t->waitfor('/ : $/i');
$t->print("");
#ootab => l�puga prompti, siis saadab sinna2su: ip iflist
$t->waitfor('/=>$/i');

@lines = $t->print("ip iflist");
$t->waitfor('/=>$/i');
$t->print("exit");
[/php]

Keegi kes Perli scriptiga rohkem kodus võiks natukene juhtnööre anda.

_________________
Enne teema püstitamist kasutage OTSINGUT
Küsi targalt: Infot siit!
Kui aru ei saa, siis küsi.

wk
Vana Pingviin
Vana Pingviin



Liitunud: 24.10.2007
Postitused: 1133
Asukoht: Tallinn, vahel Vastseliina vald
Distributsioon: Debian, Kubuntu
estonia.gif
postituspostitatud: 18.07.2008, 11:34  postituse pealkiri:  (teema puudub)  

Tsitaat:
Prompt => '/$ $/i',

See võiks olla Prompt => '/\$ $/i',

Üldiselt, ma jätaks kõik võimaliku perli meetodite hooleks ja alles siis, kui need miskil põhjusel ei toimi, asuksin print ja waitfor asjadega mängima. Sama skript mooduli meetoditega näeks välja umbes selline (ip iflist-i asemel ip link, kuna minu ip ei tea iflistist midagi)
Kood:
#!/usr/bin/perl
use Net::Telnet ();
#$host on ruuteri IP aadress
my $host = "192.168.1.254";
my $user = "Administrator";
my $pass = "";
$t = new Net::Telnet (Timeout =>3,Prompt => '/\$ $/i', dump_log => "/home/imre/xxxxx.html");
$t->open($host);
$t->login($user, $pass);
@lines = $t->cmd("ip link");
$t->print("exit");
print "@lines\n";

Põhiline probleem oli mu arust regulaaravaldiste erimärkidega, $ tähendab realõppu ja seepärast tuleb see kindlasti paotada \-ga, ka > võis olla erimärgi tähenduses, see tuleks siis ka paotada. Kui ikka ei toimi, võiksid logifaili ka näidata.

_________________
Kõike hääd,
WK

imre
Vana Pingviin
Vana Pingviin



Liitunud: 16.08.2005
Postitused: 2648
Asukoht: Saku kant
Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 18.07.2008, 13:28  postituse pealkiri:  (teema puudub)  

wk, prompt ei ole takistuseks.
dump_log faili läheb väljund.
Muide, "ip link" ei ole asjakohane käsk kuna tegemist on ruuteriga mida vaja perliga torkida natukene Smile
Samuti see rida:
$t->login($user, $pass); (perl peab enne vastava prompti ära otoama, siis tegutseb edasi)
Probleem pole niivõrd sisselogimisega kuivõrd ainult väljundiga.
s.t minu näidatud koodijupp teeb korrektselt järgnevat:
ühendub ruuteriga, logib sisse, sisestab sinna käsu ja logib välja.
Edasine jutt läheb dump faili siis
Väljund mille saab ruuterisse telnettides ilma perlita oleks järgnev:
Kood:
Interface                            Group  MTU   RX         TX         Admin  Oper
0   loop. . . . . . . . . . . . . .  local  65535 2282076    1711355    UP     [UP]
1   Internet. . . . . . . . . . . .  wan    1492  1460005316 140571108  UP     UP
3   LocalNetwork. . . . . . . . . .  lan    1500  142911564  1460339555 UP     [UP]

mille ta dump faili paiskab on nähtav SIIT LINGIST
Speedtouch 510 puhul näiteks selline scripti jupp:
Nähtav siis SIIT

_________________
Enne teema püstitamist kasutage OTSINGUT
Küsi targalt: Infot siit!
Kui aru ei saa, siis küsi.

wk
Vana Pingviin
Vana Pingviin



Liitunud: 24.10.2007
Postitused: 1133
Asukoht: Tallinn, vahel Vastseliina vald
Distributsioon: Debian, Kubuntu
estonia.gif
postituspostitatud: 18.07.2008, 21:56  postituse pealkiri:  (teema puudub)  

Tsitaat:
mille ta dump faili paiskab on nähtav SIIT LINGIST

Sääl on olemas see sama väljund, mis Sa saad telnettides. Kas Sulle ei meeldi dumpi vorm? Dump on ju nagunii ainult debugimiseks, vajaliku väljundi saad ikka muutujast.

Ma proovisin Sinu skriptiga teise masinasse telnettida, sääl käsku anda ja käsu väljund muutujale omistada. Ei toiminud hästi. Modifitseerisin sellisele kujule, nagu eelmises postituses ja kõik hakkas ilusti toimima. Kas Sa minu modifitseeritud skripti proovisid? Ei toimi? Igatahes sääl Sinu Speedtouch 510 lingil olev skript on tehtud täpselt samade meetoditega nagu minu oma...

_________________
Kõike hääd,
WK

imre
Vana Pingviin
Vana Pingviin



Liitunud: 16.08.2005
Postitused: 2648
Asukoht: Saku kant
Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 19.07.2008, 10:19  postituse pealkiri:  (teema puudub)  

Sinu koodijuppi proovisin samuti, aga ei aidanud.

Kood:
timed-out waiting for command prompt at test1 line 9

Ehk siis see rida:
Kood:
$t->login($user, $pass);

_________________
Enne teema püstitamist kasutage OTSINGUT
Küsi targalt: Infot siit!
Kui aru ei saa, siis küsi.

wk
Vana Pingviin
Vana Pingviin



Liitunud: 24.10.2007
Postitused: 1133
Asukoht: Tallinn, vahel Vastseliina vald
Distributsioon: Debian, Kubuntu
estonia.gif
postituspostitatud: 19.07.2008, 16:48  postituse pealkiri:  (teema puudub)  

Aga defineeri objekti loomisel oma Prompt selliselt, nagu ta lõpuks on ('/=>/'). Selline prompt on ebastandardne ja perli telneti moodul ei saa vast muidu pihta, millal on saabunud vaikus.

_________________
Kõike hääd,
WK

imre
Vana Pingviin
Vana Pingviin



Liitunud: 16.08.2005
Postitused: 2648
Asukoht: Saku kant
Distributsioon: Ubuntu
estonia.gif
postituspostitatud: 20.07.2008, 15:35  postituse pealkiri:  (teema puudub)  

wk, päris täpselt ma sind ei mõistnud ja seega otsest abi sinust ei olnud, aga tänud siiski üritamise eest Smile
Töötav kood oleks siis järgnev:
Kood:
#!/usr/bin/perl
use Net::Telnet ();
#$host on ruuteri IP aadress
my $host = "192.168.1.254";
$t = new Net::Telnet (Timeout => 1, Prompt => '/\$ $/i' , output_log => "/home/imre/xxxxx.html");
$t->open($host);
$t->waitfor('/: $/i');
$t->print("Administrator");
$t->waitfor('/ : $/i');
$t->print("");
$t->waitfor('/>$/i');
@lines = $t->print("ip iflist");

($output) = $t->waitfor('/=>$/i');
print $output;
$t->print("exit");

Teeb oma töö ära - edasine osa peaks olema siis perli ja html sõpruse sobitamine, et asjale kena välimus anda Smile

_________________
Enne teema püstitamist kasutage OTSINGUT
Küsi targalt: Infot siit!
Kui aru ei saa, siis küsi.

Näita (aja järgi):      
Postita uus teemaVasta teemale


Vaata järgmist teemat
Vaata eelmist teemat
Powered by phpBB2 Plus based on phpBB © 2001/7 phpBB Group