Hallo
Dies hier habe ich nicht verstanden,
Die Ausgabe (jetzt Dateiname /Verzeichnis)
kann man anpassen, in dem man in der Funktion
sub ZeigeDoppelteDateien herumschreibt.wo soll ich was einsetzen ??
Ganz einfach, Du schreibst mir,
wie die Ausgabe genau aussehen soll,
ich ändere die betreffende Zeile in der
Funktion und hänge sie in den nächsten
Beitrag rein.
Der andere Punkt ist : wenn ich die Datei getdube.pl
unmittelbar starte, dann wird gesucht usw. und am Schluss
schließt sie wieder.
Das Problem ist, dass Windows(!) die DOS-Box
wieder schliesst, in der du das Programm gestartet
hast. Das kannst Du wie folgt „umschiffen“.
Du schreibst eine „run.bat“-Datei mit
folgendem Inhalt (Pfad anpassen):
cmd /k c:\perl\bin\perl getdup.pl c:\
bzw. schreibst eben alles in die run.bat
rein, was gemacht werden soll.
gehe ich über DOS und starte, dann erhalte ich die Ergebnisse
im DOS_Fenster, schaffe es jedoch nicht sie z.B. in eine *.txt
Datei zu überführen. Was muss ich machen, dass ich die Ausgabe
der Ergebnisse noch hinbekomme ?
Einfach die Ausgabe in eine Datei umlenken:
perl getdupe.pl \> dateiliste.txt
Ist richtig, dass das Script nicht partitionsübergreifend
läuft, also D: wird in dei Suche nicht mit einbezogen,ja ?
dazu brauchst Du zwei Aufrufe:
perl getdupe.pl \> dateiliste.txt
perl getdupe.pl \>\> dateiliste.txt
d.h., die
Zweite Zeile hängt die Ausgabe (>>:wink: an die Datei
an, ohne sie (>:wink: neu zu erstellen.
Andererseits, ersetze doch mal den ersten
Block bei main durch Folgendes:
main:
foreach my $arg (@ARGV) {
chdir $arg;
Workproc();
}
exit(0);
Jetzt geht
perl getdupe.pl c:\ d:\ \> dateien.txt
Wie soll die endgültige Ausgabe aussehen? Ich programmiere
sowieso gerade ein wenig perl, da kann ich das
gleich mit ändern.
Grüße
CMБ