Schrift
[thread]4335[/thread]

ausgabe von telnet speichern: und bei einem anderen befehl verwenden



<< |< 1 2 >| >> 18 Einträge, 2 Seiten
[E|B]
 2004-08-11 20:59
#38008 #38008
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
HiHo!

Code: (dl )
1
2
3
4
my $output = `who`;
my ($ip) = $output =~ /^.*?(\d+\.\d+\.\d+\.\d+)$/gis;
my $ping = `ping -a $ip`;
print $ping;


Quick 'n dirty 'n untested. 8)
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
ptk
 2004-08-11 22:11
#38009 #38009
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[E|B
,11.08.2004, 18:59]HiHo!

Code: (dl )
1
2
3
4
my $output = `who`;
my ($ip) = $output =~ /^.*?(\d+\.\d+\.\d+\.\d+)$/gis;
my $ping = `ping -a $ip`;
print $ping;


Quick 'n dirty 'n untested. 8)

who gibt evtl. den aufgeloesten Hostnamen zurueck. Aber dann kann man ja esskars kuerzlich gepostetets IP/Hostname-Test-Modul verwenden...
Rooty
 2004-08-12 16:11
#38010 #38010
User since
2004-03-14
27 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hab jetzt mal IO Socket:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/perl
#
use IO::Socket;
my $sock = IO::Socket::INET->new(qq(127.0.0.1:1234));

my $ci = 4;

my $player = "Devel";
my $user = 1;    #<---- Der Wert ist ist diesem Beispiel festgelegt.

{
 print $sock qq(sel 12345\n);
 print $sock qq(slogin superadmin abcde\n);

 print $sock qq(fp $player\n);  #<---(1)

 print $sock qq(mptc $ci $user\n);

 print $sock qq(msgu $user @ --[ Hallo Welt ]---\n);
 print "Programm Ende\nquit)";
}



Hab hab jetzt probleme beim verarbeiten des Befehls "fp" (fin-player).
Eingabe:
"fb Devel" ($player schon fest definiert)
Ausgabe:
fp Devel
p_id    p_dbid  c_id    nickname        loginname       ip
1       0       1       "Devel" ""      "0.0.0.0"
OK

So nun möchte ich den Wert "1" von der "p_id" kopieren
und diesen Wert (1) dann an $user schicken.

Muss ich das mit:
my $p_id,$p_dbid,...
festlegen ?

edit renee: ne Runde [code]-Tags spendiert\n\n

<!--EDIT|renee|1092313635-->
betterworld
 2004-08-15 00:36
#38011 #38011
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
[quote=ptk,12.08.2004, 17:42]Aha. netcat kannte ich nicht, stattdessen habe ich immer socket verwendet.[/quote]
Netcat ist wirklich cool, das sollte man sich einfach mal angucken. Es ist sozusagen das Schweizer Taschenmesser jedes Heimnetzwerkers. Mit netcat und inetd laesst sich in 2 Sekunden ein Port-Forwarder basteln.
Und es kann sogar UDP, was mir neulich sehr geholfen hat, als ich einen Server testen wollte, der UDP benutzt.
Rooty
 2004-08-15 14:19
#38012 #38012
User since
2004-03-14
27 Artikel
BenutzerIn
[Homepage] [default_avatar]
das oben mit dem ping-modul hat sich erledigt.

Mir ist gerade wichtiger das ich das script da oben (ca 4 beiträge ans laufen bekomme.

PS: Sorry wenn ich euch damit nerve aber ich häng an dem Problem schon 1 monat lang.\n\n

<!--EDIT|Rooty|1092578011-->
snarf
 2004-08-19 12:07
#38013 #38013
User since
2003-08-14
77 Artikel
BenutzerIn
[default_avatar]
... strange : Socket-Programmierung vor den eigentlichen Perl-Basics ???  

(ungetesteter code)

Code: (dl )
1
2
3
4
5
6
7
8
9
$sock->recv($text,128)

my @lines = split /\n/, $text;
while ($lines[0] !~ /^p_id/)
   { shift(@lines) }

my $p_id = (split /\s+/, $lines[1])[0];

print $sock "kick $p_id\n";


Hope2Help, Dirk


Edit: So, mal eben noch nachgetragen ...\n\n

<!--EDIT|snarf|1092925408-->
pq
 2004-08-19 18:14
#38014 #38014
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
es muss $lines[0] heißen, also +s
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
snarf
 2004-08-20 00:47
#38015 #38015
User since
2003-08-14
77 Artikel
BenutzerIn
[default_avatar]
... ob es vielleicht daran liegt, dass Du das Code-Snipplet einfach nicht vollständig abgetippt hast ? ! ? ! ? !

Es fehlt z.B. nach der while schleife :

Code: (dl )
my $p_id = (split /\s+/, $lines[1])[0];
Rooty
 2004-08-11 20:24
#38016 #38016
User since
2004-03-14
27 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hi

Gibt es eine Möglichkeit die ausgabe von einem telnet-befehl zu speichern und diese in einem anderen befehl zu verwenden.

Bsp:
Eingabe:
who
Ausgabe:
user IP
Hannes 127.0.0.1

das der werde IP bespeichert wird und es dann
so aussieht:
programm-code:
ping -a $seine_IP
ausgeführt wird.
esskar
 2004-08-11 21:40
#38017 #38017
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
ist "who" ein telnet befehl?
wenn ja, wirst du wohl CPAN:Net::Telnet benutzen müssen.
dann kannst du auch CPAN:Net::Ping\n\n

<!--EDIT|esskar|1092246073-->
<< |< 1 2 >| >> 18 Einträge, 2 Seiten



View all threads created 2004-08-11 20:59.