Struppi: anfänger script.. dateihandling

Beitrag lesen

mein script läuft glaube ich nicht

Wenn du direkt Cheatahs ersten Tipp eingebaut hättest:

#!/usr/bin/perl

#!/usr/bin/perl -w

Damit schaltest du Warnungen an, die für das Debuggen sehr sinnvoll sind.

use strict;

Danach müssen alle Variabeln mit my deklariert werden, damit verhinderst du Tippfehler.

my $file = "test.pl";
my $modify = stat($file[9]);
my $mod_stunden = int($modify / 3600);

if ($mod_stunden > 1){
 print "\nVORSICHT!! Die Datei wurde zuletzt vor ".$mod_stunden." bearbeitet\n";
}else{
 print "\nALLES OK!! Die Datei wurde zuletzt vor ".$mod_stunden." Stunden bearbeitet\n";
}

Jetzt erhälst du folgende Fehlermeldung:
Global symbol "@file" requires explicit package name at test.pl line 7.
Execution of test.pl aborted due to compilation errors.

Es ist nämlich nicht so wie Cheatah schreibt, das aus dem String (Skalar) ein Array wird. $var[...] ist etwas komplett anderes wie $var

Du hast also einen Tippfehler drin. lies dir nochmal die Erklärung zu stat durch.

Struppi.