Idag har jag gjort ett Perl-script som går igenom alla kataloger under en sökväg för att se om någon eller några av katalogerna i sökvägen är ett Subversion repository(svn-repo) och om den hittar ett svn-repo dumpa de svn-repot med hjälp av ”svnadmin dump” till en annan dator.
Fick dock ett lite problem med mellanslag i katalognamnen när jag försökte avgöra om katalogen var ett svn-repo. För att avgöra om en katalog var ett svn-repo så kollade jag om filen ”format” fanns i katalogen.
När jag körde
[perl]
if(-e /sökväg/1 2 3 4/format){
print "Så funkade väldigt dåligt\n";
}
[/perl]
Min snabba lösning var att köra file kommandot med hela sökvägen inom citationstecken.
[perl]
my $cmd = "file -b \"/sökväg/1 2 3 4/format\" 2>/dev/null";
my $statResult = `$cmd`;
chop($statResult);
if($statResult eq "ASCII text"){
return 1;
}
return 0;
[/perl]
Och som vanligt den här koden kommer säkert förbättras om jag orkar lägga mer tid på att läsa mina gamla Perl böcker igen. Om det är någon som vet ett bättre sätt att lösa problem får ni gärna kommentera.
Råkade även hitta lite till kod som kunde förbättras i mitt Memory spel så nu är även det ute i ny version.