Thread Duplikate verschieben (7 answers)
Opened by Tom at 2011-12-31 12:05

topeg
 2011-12-31 14:12
#155214 #155214
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Welche von den aufgeführten Dateien? Immer die erste in der Liste, oder die mit einem bestimmten Namen, oder die mit einem bestimmten Erstell-/Modifikations-Datum?
Sei spezifisch. Überlege dir genau was du willst.

Beispiel mit dem du arbeiten kannst:
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
#!/usr/bin/perl
use strict;
use warnings;

use File::Spec;
use File::Copy;
use File::Find::Duplicates;

my $source_path='C:\test';
my $destination_path='C:\doppelt';

################################################

# Dubletten von Datein finden
my @dupesets = find_duplicate_files($source_path);

# Alle Gefunden Dateien durch gehen
for my $dupeset (@dupesets)
{
  # Mehrfach vorhandene Dateien
  my @files=@{ $dupeset->files };

  # erste Datei behalten
  shift(@files);

  #alle anderen Dateien verschieben:
  for my $source_path (@files)
  {
    # Dateinamen extrahieren:
    my ($volume,$directories,$file) = File::Spec->splitpath( $source_path );

    # Zielpfad erstellen
    my $destination_path=File::Spec->join($destination_path,$file);

    # Datei Verschieben
    move($source_path,$destination_path) or warn("Can't move $source_path to destination_path ($!)\n");
  }
}

Last edited: 2011-12-31 14:13:52 +0100 (CET)

View full thread Duplikate verschieben