Ordner erkennen die nur Verknüpfungen sind



  • Hallo,

    ich lerne gerade etwas c programmierung unter linux.
    Mein erstes tool soll einfach eine Datei/Ordner auf der HDD suchen.

    Das unktioniert auch schon.
    Zur Optimierung, würde ich aber gerne Ordner, die nur wieder Verknüpfungen sind, erkennen und übersprüngen wollen. Sonst Komm ich über einen gewissen Punkt bei der Suche nich hinaus.

    Ich habe es wie folgt versucht - was leider nicht funktioniert:

    if (stat(ccPath, &buffer) == 0) {
    
             if(S_ISDIR(buffer.st_mode))  {
                 if (S_ISLNK(buffer.st_mode)) {
                 }
               //  Verzeichnis ist nur Verknüpfung
                  else {
                 add2list(iDirCount,ccPath,cDirectory); }
                 }}
    

    Könnt ihr mir helfen, wie ich Verzeichnisse erkenne, die nur Verknüpfungen sind?

    Vielen Dank
    Edwart



  • stat löst den Symlink auf, Du willst ja Informationen über den Symlink an sich, nicht über das versymlinkte Verzeichnis.

    Darum brauchst Du wohl noch man: lstat.


Anmelden zum Antworten