O'Reilly logo

Einführung in Perl, Sixth Edition by brian d foy, Tom Phoenix, Randal L. Schwartz

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Lösungen zu den Übungen in Kapitel 12

  1. So könnte eine mögliche Lösung aussehen:

    foreach my $datei (@ARGV) {
      my $attrib = &attribute_ermitteln($datei);
      print "'$datei' $attrib.\n";
    }
    
    sub attribute_ermitteln {
      # Merkmale für die angegebene Datei ermitteln
      my $datei = shift @_;
      return "existiert nicht" unless -e $datei;
    
      my @attribute;
      push @attribute, "lesbar"      if -r $datei;
      push @attribute, "schreibbar"  if -w $datei;
      push @attribute, "ausfuehrbar" if -x $datei;
      return "existiert" unless @attribute;
      'ist ' . join " und ", @attribute;  # Rückgabewert
    }

    Auch bei dieser Lösung ist es wieder handlich, eine Subroutine zu benutzen. Die Hauptschleife gibt für jede Datei eine Zeile aus, die die Merkmale enthält, etwa 'cereal-killer' ist ausfuehrbar oder 'sumselprunz' ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required