c++ / linux / verzeichnisarbeit
-
siehe www.boost.org
Das ist eine Bibliothek, die Dir unter anderem Zugriff auf das Dateisystem erlaubt.
Klick Dich einfach mal durch die Doku durch: http://www.boost.org/libs/filesystem/doc/index.htmbtw.: Wenn Du mit nem Begriff nix anfangen kannst, darfst Du ruhig google benutzen.
-
-
Das letzte Mal als ich sowas brauchte, habe ich mir feige einen String
mit einem find-Kommando zusammengebaut, mit system() ausführen
lassen und die Ausgabe abgefangen.find ist sehr flexibel, was die Suchkriterien angeht...
mfgkw
-
mfgkw schrieb:
Das letzte Mal als ich sowas brauchte, habe ich mir feige einen String
mit einem find-Kommando zusammengebaut, mit system() ausführen
lassen und die Ausgabe abgefangen.schäm dich, system zu benutzen :p
Das ist (fast) immer die schlechteste Lösung.MfG
GPC
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Linux/Unix verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
@GPC:
EIgentlich hast du ja recht, aber manchmal ist es schon hilfreich.
Eben wenn man einiges nutzen möchte, was find nebenher liefert.Außerdem fragte er nicht nach der elegantesten, sondern nach
der einfachsten Lösung...Der normale Weg wäre, sich mit opendir(), readdir(), closedir(),
stat(), und lstat() durchzuwühlen und ggf. mit regcomp() und
regexec() die Namen auf Muster zu testen.
-
mfgkw schrieb:
Außerdem fragte er nicht nach der elegantesten, sondern nach der einfachsten Lösung...
Boost _ist_ die einfachste Lösung.
-
was muss ich tun damit ich Boost verwenden kann? irgendwelche hpp-dateien auf meinen rechner kopieren?
kann ich damit dateien suchen, die eine bestimmte zeichenkette enthalten. ich weiss naemlich nicht die namen der dateien die ich suche sondern weiss nur dass sie einen bestimmten substring enthalten muessen.
-
Wie man boost installiert, ist auf der Boost-Website nachzulesen, zumindest wenn Deine Distribution keine fertigen Boost-Pakete anbietet.
Dann kannst Du einfach die Dateinamen in einem Verzeichnis auslesen und mit boost::regexp drübergehen.
-
mfgkw schrieb:
@GPC:
EIgentlich hast du ja recht, aber manchmal ist es schon hilfreich.Es ist unsauber und auch noch langsam.
Außerdem fragte er nicht nach der elegantesten, sondern nach
der einfachsten Lösung...Einfache Lösungen sind elegant, und umgekehrt, das ist ihr Merkmal.
MfG
GPC
-
nman schrieb:
Wie man boost installiert, ist auf der Boost-Website nachzulesen, zumindest wenn Deine Distribution keine fertigen Boost-Pakete anbietet.
...wie krieg ich das raus? hier ist redhat auf der kiste.
bei meinen englisch kenntnissen wuerde das alles ewig dauern
-
Bei Redhat ist doch sicher ein Paketmanager bei. Da könntest du mal suchen...
Ansonsten http://rpmfind.net