|
mkfiledb.pl |
#!/usr/local/bin/perl -w use Fcntl; use IO::Dir; use DB_File; use strict; my $home = $ENV{'HOME'}; my $database = "$home/.filedb"; my %db; tie(%db, 'DB_File', $database, O_RDWR|O_CREAT|O_TRUNC, 0600, $DB_HASH); chdir($home) && descend("."); untie %db; |
Problem: Suche aller Dateien eines vorgegebenen Namens
im eigenen Dateibaum. Da der ziemlich umfangreich sein kann,
ist es sinnvoll (z.B. nachts per Cron-Job) eine entsprechende
Datenbank anzulegen (mkfiledb), die dann anschließend
sehr effizient abgefragt werden kann (findfile).
| |
Zur Implementierung wird hier Sleepycat Software's
Berkeley DB verwendet.
| |
$DB_HASH selektiert die Variante einer dynamischen
Hash-Tabelle.
|
Copyright © 1996, 1998, 1999, 2000 Andreas Borchert, in HTML konvertiert am 07.02.2000 |