Schrift
[thread]6013[/thread]

Verzeichnis nach bestimmtem Inhalt auslesen



<< >> 4 Einträge, 1 Seite
Gast Gast
 2004-01-13 18:50
#79117 #79117
Hallo Perl-Community.de,

meine allererste Frage hier, ich hoffe, ich blamier mich nicht ;)
Also:
Es geht darum für eine größere Aufgabe den Inhalt eines Verzeichnises zu sortieren. (Nach Name, Verzeichnis oder Datei, usw...).

Ich wollte zum Einarbeiten mal einfach alle Verzeichnisse, die in einem bestimmtem Verzeichnis vorkommen ausgeben lassen.
Deshalb habe ich Folgendes geschrieben:

Code: (dl )
1
2
3
4
5
6
7
8
9
#!/usr/bin/perl -w

$directory = "/home/luke";
opendir(DIR,$directory) or die "Can't open $directory: $!";
foreach (readdir DIR)
{
print "$_\n" if -d;
}
closedir(DIR);


Die Ausgabe beschränkt sich aber auf
.
..
also nur die ersten beiden Verzeichnisse.
Wenn ich "-d" durch "-f" ersetze, kommt überhaupt nichts dabei raus.
Was muss geändert werden, damit alle Verzeichnisse bzw. Dateien ausgegeben werden?

Danke für Tipps,

Luke
pq
 2004-01-13 18:53
#79118 #79118
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
print "$_\n" if -d "$directory/$_";
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Crian
 2004-01-13 18:58
#79119 #79119
User since
2003-08-04
5873 Artikel
ModeratorIn
[Homepage]
user image
(Denn Du testest nicht in dem Verzeichnis, aus dem Du liest, deshalb gibt es nur . und .. - gäbe es zufällig weitere gleichlautende Unterverzeichnisse in beiden Verzeichnissen, wären auch diese mit ausgegeben worden.)

Und: Herzlich willkommen ... es gibt keine dummen Fragen btw. :)\n\n

<!--EDIT|Crian|1074013126-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Luke
 2004-01-13 23:26
#79120 #79120
User since
2004-01-13
1 Artikel
BenutzerIn
[default_avatar]
Danke, jetzt fällt's mir wieder ein, dass readdir DIR nicht den gesamten Pfad zurückgibt, sondern nur dem Namen _im_ Verzeichnis.
Danke für die schnelle Antwort

Luke :)
<< >> 4 Einträge, 1 Seite



View all threads created 2004-01-13 18:50.