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