#!/usr/bin/perl use strict; use warnings; use File::Find; use DBI; # Verzeichnis von Kommandozeile holen my $verzeichnis = shift(@ARGV) || '.'; # Array für die gefundenen Dateien my @dateien; # Routine, die Dateien findet sub wanted { push @dateien,$File::Find::name # schiebe Dateinamen in Array if $File::Find::name ne "." # wenn Datei ist nicht aktuelles Verzeichnis and $File::Find::name ne ".." # Datei ist nicht übergeordenetes Verzeichnis and -f $File::Find::name; # Dateiname ist eine Datei } # Suche nach Dateien starten find(\&wanted, $verzeichnis); my $datenbank = 'meinedateidb'; # Name der MySQL-Datenbank my $tabelle = 'Dateien'; # Name der Tabelle in der DB my $spaltenname = 'Dateiname'; # Name der Spalte in der Tabelle my $dsn = "dbi:mysql:$datenbank"; # zu Datenbank verbinden my $dbh = DBI->connect( $dsn, "LoGiNNuTzErNaMe", "geHeImP455w0r7" ); # SQL vorbereiten my $sth = $dbh->prepare( q{INSERT INTO ? (?) VALUES (?);} ); # in Schleife Dateinamen aus Array holen for my $dateiname (@dateien) { # und SQL ausführen und Daten in Datenbank schreiben $sth->execute($tabelle, $spaltenname, $dateiname); } # von Datenbank abmelden $dbh->disconnect(); 1;