Thread mehrere Bedingungen um bestimmte Dateien zu löschen (3 answers)
Opened by zenkko at 2009-03-25 14:57

zenkko
 2009-03-25 14:57
#119804 #119804
User since
2009-03-25
1 Artikel
BenutzerIn
[default_avatar]
Hallo,

bin gerade neu bei der Perl Programmierung und habe ein Problem mit einem Script.
Folgende Ausgangssituation:
Im Ordner /home/bla gibt es einige hundert Unterordner. Alle Ordner sollen durchsucht werden. Dateien namens WDS sollen in den Ordnern gelöscht werden wenn sich keine .jpg Dateien im gleichen Ordner befinden.
Mein Lösungsansatz sieht momentan so aus:

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
#!/usr/bin/perl

use strict;

my $bild = "*.jpg";
my $WDS = "WDS";
my @beide = ( $bild, $WDS );


# Oeffnen der Ordner
foreach $ordner ( @bla ) {

my $ordner = "/home/bla/";

    opendir ( ORDNER, $ordner) or die "kann Ordner nicht oeffnen";
    my $inhalt = `ls -1 $ordner`;

print STDERR "$inhalt";

    unless ( $inhalt = @beide or $bild )  {

    unlink ( $WDS ) or die "Konnte $WDS nicht loeschen: $!\n";
}


Komme nicht wirklich weiter, da ich nicht weiss, ob ich die Syntax nicht richtig habe oder der Ansatz schon verkehrt ist. Würde mich über Hilfe freuen.

MfG

mod-edit pq: perl-tags hinzugefügt
Last edited: 2009-03-25 15:16:27 +0100 (CET)

View full thread mehrere Bedingungen um bestimmte Dateien zu löschen