Vergelijking van EEXIST en EISDIR — begrijp de verschillen, oorzaken en oplossingen.
EEXISTEen bestandsaanmaakaanroep mislukte omdat er al een bestand met de opgegeven naam bestaat.
Een bewerking die vereist dat een bestand niet bestaat, werd geprobeerd op een bestaand bestand. Dit treedt op bij de vlaggen O_CREAT | O_EXCL in open(), bij het aanroepen van mkdir() op een bestaande map, of bij het aanmaken van een symlink waar er al een bestaat.
Controleer of het bestand bestaat vóór het aanmaken. Gebruik O_CREAT zonder O_EXCL als overschrijven acceptabel is. Verwijder het bestaande bestand eerst indien van toepassing.
EISDIRDe bewerking is niet toegestaan op een map, maar het doelpad is een map.
Er werd geprobeerd een bestandsspecifieke bewerking (zoals openen voor schrijven of unlink) uit te voeren op een map.
Gebruik mapspecifieke bewerkingen zoals rmdir() of opendir() in plaats van bestandsbewerkingen. Gebruik rm -r om een map met zijn inhoud te verwijderen.