Schrift
[thread]8838[/thread]

Expliziten Wert aus Datei prüfen ob vorhanden! (Seite 2)



<< |< 1 2 >| >> 15 Einträge, 2 Seiten
bloonix
 2007-03-19 10:08
#75033 #75033
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
[quote=leissi,19.03.2007, 08:41]
Code: (dl )
1
2
3
 
     my $dir = '\\\\XXXXXXX\\f$\\Log\\MSSQL$XXXXXX\\SqlSrvJobs';
     opendir(DIR,$dir) or die $!; # Verzeichnis "öffnen"
[/quote]
Liegt es vielleicht hierran? Da sind so viele Slashes drin...\n\n

<!--EDIT|opi|1174291738-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
renee
 2007-03-19 10:14
#75034 #75034
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
     my @verzeichnisse1 = grep{-l $dir .'/'.$_}readdir(DIR);
Sind in dem Verzeichnis symbolische Links? Wenn die Backup-Datei kein Link, sondern eine Datei ist, dann musst Du aus dem -l ein -f machen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
leissi
 2007-03-19 10:26
#75035 #75035
User since
2005-07-06
84 Artikel
BenutzerIn
[default_avatar]
Hi,

habe das mal abgeändert auf -f, trotzdem kommt keine aktuelle Datei. Obwohl die xxx.log um 3:33 heute frue geschrieben wurde.

Das mit den Slashes ist korrekt verwende ich explizit auch für den Suchstring innerhalb der Datei.

Gruss

Leissi
bloonix
 2007-03-19 10:43
#75036 #75036
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
Also ich habe deinen Code einfach mal getestet und bei mir funktioniert
er problemlos. Dateien nicht älter als einen Tag werden ausgegeben.
Bist du sicher, dass deine Pfadangabe richtig ist?\n\n

<!--EDIT|opi|1174295513-->
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.
leissi
 2007-03-19 14:06
#75037 #75037
User since
2005-07-06
84 Artikel
BenutzerIn
[default_avatar]
Also ich komme immer noch nicht weiter, es hakt immer noch an der Abfrage:

Quote

my $verzeichnis = '\\\\XXXXX\\f$\\log\\MSSQL$XXXXXXXXXX\\SqlSrvJobs';
my $datei = 1;
opendir VH, $verzeichnis or die "Kann $verzeichnis nicht oeffnen: $!";
foreach $datei (readdir VH) {
  next unless $datei =~ /reset_QcDemoPj.log$/;
  # Hier wird explizit nach einer Datei gefahndet
  {
 
  print "eine Datei in $verzeichnis ist $datei\n";
}
}# Hier Abfrage des RIMESTEMPS
my $dir;
my $bool = 0; # 0= Nein
      for my $dir
          {
          if(existsGlobalCheck($dir.'/'.$datei,1))
            {
               $bool = 1; # 1 = Ja
               print  "OTA Dateien vorhanden" . $bool . " OTA-Dateien gefunden!";
            print  $datei . " OTA-Dateien im Verzeichnis  " . $dir . "  vorhanden!" ;
             }
           
         }
           if ($bool == 1) # 1 = Ja
             {                          
                print ""Es besteht in dem Verzeichnis mind. eine aktuelle OTA-Dateien!";                              
             }
           else      
             {                  
                print "Es besteht in dem Verzeichnis" . $dir . "keine aktuelle Backupdatei!";                
                $DateiCheck = 0;
             }
           ## Hier wird nach Durchlauf der Kontrolle ein Statment abgegeben wenn keine aktuellen Dateien vorhanden sind!
           unless($DateiCheck)
             {
                print "OTA-Dateiverzeichnis ist unvollständig !! Bitte prüfen!!!";
             }  
       return $DateiCheck  # Hier wird der ermittelte Rückgabewert aus der Subroutine übergeben!  
       
    } # End of: sub runOtaCheck    
# close VH


# ++++++++++++++++SubRoutinen++++++++++++++++++++++++++++

# Subroutine1 BackupCheck-Zeitstempel

# Hier wird geprüft ob aktuelle Datei vorliegt oder nicht
# return:
#  0 = Die überprüfte Datei ist nicht aktuell genug
#  1 = Die überprüfte Datei ist aktuell genug
 sub existsGlobalCheck
  {
    my ($file,$max_age) = @_;
    my $tmpValue = 0;
    #print LogDatei $tm ;
    my $age = (time - (stat($file))[10]) / (60 * 60 * 24);
    if ($age < $max_age)
      {    
        $tmpValue = 1;
        &printLogEntry ("INFO","Aktuelle Dateien vorhanden!");
        &printLogEntry ("INFO","file  stat($file)");
      }
    else
      {  
        $tmpValue = 0;    
      }  
    return $tmpValue;
  }
\n\n

<!--EDIT|leissi|1174306082-->
<< |< 1 2 >| >> 15 Einträge, 2 Seiten



View all threads created 2007-03-13 16:52.