Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]7959[/thread]

perl bookmark converter



<< >> 1 Eintrag, 1 Seite
Gast Gast
 2006-05-09 17:59
#65870 #65870
hi,

ich habe folgendes script

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
#!/usr/bin/perl
#Search for bookmarks.html and print only the user added content
use strict;
use warnings;
use File::Find;

if (@ARGV){

print "\\\\server\\profile\\$ARGV[0]\\Anwendungsdaten\\MozillaOLD\\Profiles\n";

my $dir = ("\\\\server\\profile\\$ARGV[0]\\Anwendungsdaten\\MozillaOLD\\Profiles");
my $datei = 'bookmarks.html';
my $pfad = find(\&wanted, $dir);

sub wanted {
return unless ( $File::Find::name =~ $datei);
$File::Find::name =~ s/\//\\/g;
my @erer = $File::Find::name . "\n";
open D, $erer[0] || die "geht nich";
my @dat = <D>;
my $dataz = (scalar @dat) -1;
my $start = 21;

my $check = "</DL><p>\n";

if ($dat[$start] eq $check) {
$start = $start;
} else {
mach was;
}

# DEBUG:
# print @dat[$start...$dataz];

print "\n";
open(N, ">>C:\\WINNT5\\Profiles\\$ARGV[0]\\Anwendungsdaten\\Mozilla\\Firefox\\Profiles\\erdgasschwaben.default\\bookmarks.html") ||die "geht nich";
print N @dat[$start...$dataz];
close N;
}
} else {
print "Parameter angeben\n";
}
exit;


nun habe ich aber probleme mit ein paar bookmark files welche eben nicht erst ab zeile 21 benutzerspezifische inhalte haben.

eine regeln dazu könnte lauten die datei auslesen und die daten erst ab einer zeile wie "</DL></p>" in das array schreiben. dieses wird dann später wieder an die vorbereitete datei angehängt. mein bisheriges konstrukt mit if ($dat[$start] eq $check)... funktioniert irgendwie nicht.

bin für jede hilfe dankbar... sorry - ich bin absoluter perl anfänger...

ist das skripts sonst soweit ok ?

vielen dank

gruß tobi
<< >> 1 Eintrag, 1 Seite



View all threads created 2006-05-09 17:59.