Thread Verzeichnis rekursiv auslesen und in Datenbank schreiben (39 answers)
Opened by Anton at 2012-05-15 08:38

anton
 2012-05-24 09:59
#158537 #158537
User since
2012-05-15
16 Artikel
BenutzerIn
[default_avatar]
ich hatte das was topeg gepostet hat verwendet

Edit: Gwen Dragon wie kann ich den sub_wanted dann umändern damit das mit id, pid stimmt und wie kann ich die rheinfolge der variablen ändern?

EDIT:
was ist daran falsch?habe es mit deinem code mal versucht gibt mir aber einen syntax error
Code (perl): (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
#!/usr/bin/perl

use strict;
use warnings;

$| = 1;

use File::Find;
use File::Spec;
use Text::CSV;

my $verzeichnis = shift(@ARGV) || 'C:\Users\Student\Desktop\Dropbox\Dropbox\AZ Darmstadt';
my $csv_name = shift(@ARGV) || 'C:\Users\Student\Desktop\dir.csv'; 

my $id = 0;
my $parent;
my %ids;


my $csv=Text::CSV->new( { eol => $/ } );
open(my $cvsfh,'>',$csv_name) or die("ERROR open $csv_name $!\n");
print $cvsfh "#fullname,name,size,id,pid,mtime\n";

find(\&wanted,  $verzeichnis); 

sub wanted { 
  return if ( $_ eq '..' );
  return if ( $_ eq '.' );
        $ids{ $File::Find::name } = $id;
        $parent = $File::Find::dir;
         $csv->print ($cvsfh, [
                id => $id++, 
                fullname => $File::Find::name, 
                name => $_, 
                parent => $parent, 
                parentid => $ids{ $parent },
                stat => [ (stat($File::Find::name))[8,9,10] ] ;

}


EDIT:
Syntax Error ist weg wird ausgeführt aber kriege komische werte raus
Last edited: 2012-05-24 10:12:25 +0200 (CEST)

View full thread Verzeichnis rekursiv auslesen und in Datenbank schreiben