[Perl]Dokuwiki Namespace kopier Skript zu Git Repository
Verfasst: Mi Jan 23, 2013 12:33 am
Hey,
wie manche schon gemerkt haben (So hoffe ich) habe ich mir zum Kopieren meiner Dokuwiki-Namensräume ein kleines Perl Skript geschrieben, welches die Dateien, die noch nicht existieren oder nicht den selben inhalt wie deren "Spiegel"1) hat, kopiert und in die angegebene Git-Repository kopiert. Benötigt ist min. Perl 5.12 auf Linux (Ich weiß nicht wie das auf Windows funktioniert^^).
1) "Spiegel" ist die datei, die im selben Verzeichniss mit dem selben Namen liegt.
Das Skript:
Wie schon erwähnt.. sehr klein 
Dazu noch ein etwas (Verzeichniss-)unabhängigeres Skript:
Dazu zu sagen ist nurnoch, das Rekursiv Kopiert wird. Keine Datei oberhalb der angegeben Verzeichnisstruktur wird ausgelassen..
Mit freundlichen Grüßen,
darksider3
wie manche schon gemerkt haben (So hoffe ich) habe ich mir zum Kopieren meiner Dokuwiki-Namensräume ein kleines Perl Skript geschrieben, welches die Dateien, die noch nicht existieren oder nicht den selben inhalt wie deren "Spiegel"1) hat, kopiert und in die angegebene Git-Repository kopiert. Benötigt ist min. Perl 5.12 auf Linux (Ich weiß nicht wie das auf Windows funktioniert^^).
1) "Spiegel" ist die datei, die im selben Verzeichniss mit dem selben Namen liegt.
Das Skript:
Code: Alles auswählen
#!/usr/bin/env perl
use 5.012;
my $_;
my $err;
my $_dPDir="/var/www/dokuwiki-2012-10-13/data/pages/";#=DokuwikiPagesDirectory
my $_gitDir="/home/leon/u-darksiderforge-darksidersforge/";#=Repository Directory
print "Please give the namespace that you want to add to index: ";
chomp($_ = <STDIN>);
$err=system("cp -R -u ".$_dPDir.$_." ".$_gitDir." ");
if($err==0)
{
print "Copy Succefull."
}
else
{
print "Error concurred: ".$err;
}

Dazu noch ein etwas (Verzeichniss-)unabhängigeres Skript:
Code: Alles auswählen
#!/usr/bin/perl
use utf8;
use 5.012;
my $_1;
my $_2;
my $err;
print "Please give the Directory, that you want to recursiv copy: ";
chomp($_1 = <STDIN>);
print "\n";
print "And now the directory, in that you want to copy: ";
chomp($_2 = <STDIN>);
$err=system("cp -R -u ".$_1." ".$_2." ");
if($err==0)
{
print "Copy Succefull."
}
else
{
print "Error concurred: ".$err;
}
Mit freundlichen Grüßen,
darksider3