Thread Ntbackup vs. Log...: Ich brauch hilfe (12 answers)
Opened by zipster at 2005-05-13 17:01

zipster
 2005-05-13 17:01
#54864 #54864
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Hi,

ich habe ein kleines Script geschrieben das Ntbackup ausführt und dem Namen das Aktuelle Datum anhängt. Mein Chef meinte jetzt das er auch noch gerne hätte das die Logdatei davon mitgenommen wird. Und genau hier fängt mein Problem nun an.

Ich weiß nicht wie ich feststellen soll welche Logdatei die Logdatei ist die ich brauche. Den Ntbackup hat die angewohnheit Logdateien von 1-10 zu erstellen und nach und nach die durcharbeitet.

Das heißt beim ersten Sicherungsdurchgang nimmt ntbackup backup01.log, beim zweiten backup02.log,.... und beim 11ten backup01.log,...usw.


Wie kann ich nun bestimmen Welche der 10 Dateien ich brauch?
Ich habe versucht es am Änderungsdatum festzumachen. Aber ich weiß ja nicht um wieviel Uhr genau Ntbackup die Datei anlegt. Dann habe ich versucht nur das Datum zu nehmen, geht aber auch nicht. Denn wenn an einem Tag 2 Sicherungen gemacht werden holt er sich beide Dateien....

Hilfe! Wie bekomme ich die richtige Datei?

Hier mein Code
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#! perl

use strict;
use warnings;
use File::Find;
use File::Copy;
use POSIX qw(strftime);

my %daten;
my %Config;
my $ini = "$ARGV[0]";
my $programmpfad = $0;
$programmpfad =~ s/[^\\]*?$//;
my $ini_full = $programmpfad.$ini;
my $datum = date(1);
my $datum_datei = date(2);
print $datum_datei;
my $userprofile = qx{echo %userprofile%};
chomp $userprofile;
my $ntlogpfad = $userprofile.'\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data';
open (INI, $ini_full) or die "Fehler bei INI-Datei $ini: $!";
while (<INI>)
{
next if /^#/;
chomp;
if (/^\s*(\w+)\s*=\s*(.*)/) #die erste () ist $1, und die die zweite () ist $2;
{
$Config{$1} = $2;
}
}
my $befehl = $Config{ntbackuppfad}." backup \"\@".$programmpfad.$Config{bksname}."\" ".$Config{parameter}." \"".$Config{backuppfad}.$Config{backupname}." ".$datum.".bkf\"";
system "$befehl";
if (($Config{parameter} =~ /\/L:(.)/)or($Config{parameter} =~ /\/l:(.)/))
{
if (($1 ne 'n')or($1 ne 'N'))
{
find(\&find_log,$ntlogpfad);
if (not (-e $Config{logpfad}))
{
$Config{logpfad} = $programmpfad;
}
for my $zeile (sort keys %{$daten{log}})
{

if ($daten{log}{$zeile} eq $datum_datei)
{

copy($ntlogpfad."\\".$zeile, $Config{logpfad});
}
}
}
}

sub find_log
{
if( -e $File::Find::name)
{
my $filedate = (stat($File::Find::name))[9];
my $formtime = strftime("%d.%m.%Y", localtime $filedate);
print $formtime;
$daten{log}{$_} = $formtime;
}
}
sub date
{
my $modus = shift;
my ($mday,$mon,$year)=(localtime(time))[3,4,5];
my $datum = sprintf("%04d-%02d-%02d",$year+1900,$mon+1,$mday);
my $datum_datei =sprintf("%02d.%02d.%04d",$mday,$mon+1,$year+1900);
if ($modus == 1 )
{
return $datum
}
else
{
return $datum_datei
}
}

View full thread Ntbackup vs. Log...: Ich brauch hilfe