linux-l: perl return

Alexander Lehmann ballaballla at gmx.at
Mo Feb 19 15:58:00 CET 2001


* Jens Dreger (jens.dreger at physik.fu-berlin.de) [010219 14:08]:
> On Mon, Feb 19, 2001 at 01:30:06PM +0100, Alexander Lehmann wrote:
> > Hallo Alle
> > 
> > also, es geht mir um folgendes: ich habe ein kurzes programm
> > geschrieben das mir einfach nur ausgibt, ob ein zeichen in
> > einer datei vorhanden ist. Es sieht etwa so aus:
> > 
> > #!/usr/bin/perl
> > 
> > open(COM,"</proc/net/tcp");
> > if(grep(/^(.+?\:){3}0019 01.+?/,<COM>))
> > {
> >     print "1";
> > }
> > else
> > {
> >     print "0";
> > }
> > close(COM);
> > 
> > also, nur um zusehen, ob port 25 noch offen ist. Was mich
> > aber auf ein Problem gestossen hat, was ich schon laenger
> > habe. Die ausgabe ist zu lang.

also, ich meine nicht die ausgabe vom Programm, sondern den Teil
des Scriptes, das fuer die ausgabe verantwortlich ist, folglich
'print "1";' und 'print "0";' das ist mir bereits zu lang.

> 
> Was meinst Du denn damit ?!?
> 
> Die Ausgabe ist doch entweder '0' oder '1', was soll daran zu lang
> sein ?
> 
> Sorry, verstehe die Frage irgendwie nicht...
> 

es geht mir nicht um die ausgabe, sondern darum, wie ich den
Quelltext verkuerzen kann ( am liebsten waere mir das programm
ohne if abfrage). Ich will ueberpruefen ob 
"grep(/^(.+?\:){3}0019 01.+?/,<COM>)" definiert ist, aber in den
beiden Faellen nicht jeweils einen teil einer if abfrage ausfuehren,
sondern diese ueberpruefung direkt nutzen, denn bei der 
ueberpruefung wird ja schon ein wert 1 oder 0 zurueck gegeben, den
sich if dann zu nutzen macht. Oder habe ich das prinzip von dem
if term komplett falsch verstanden?

bis denne

Alex





Mehr Informationen über die Mailingliste linux-l