Syscall BSD#128
svc · unix #128
rename
Renomme atomiquement un fichier ou un répertoire, remplaçant éventuellement une cible existante sur le même système de fichiers.
Prototype
int rename(char *from, char *to);Retour: int
Arguments
| Name | Type | Dir | Description |
|---|---|---|---|
| from | char | - | |
| to | char | - |
Historique des versions
| XNU tag | macOS | # |
|---|---|---|
| xnu-1456.1.26 | macOS 10.6 Snow Leopard | 128 |
| xnu-1486.2.11 | — | 128 |
| xnu-1504.15.3 | — | 128 |
| xnu-1504.3.12 | — | 128 |
| xnu-1504.7.4 | — | 128 |
| xnu-1504.9.17 | — | 128 |
| xnu-1504.9.26 | — | 128 |
| xnu-1504.9.37 | — | 128 |
Notes
Les renommages entre systèmes de fichiers renvoient EXDEV; les outils en espace utilisateur recourent alors à copier+supprimer. Sur APFS, rename est une opération de métadonnées transactionnelle et est durable en cas de succès. Remplacer un répertoire non vide échoue avec ENOTEMPTY.
Détection
ES émet ES_EVENT_TYPE_NOTIFY_RENAME avec les chemins source et destination.
API associées
renameatrenamex_nplinkunlinkexchangedata