Dans R, Quelle est la différence entre unlink et file.enlever?

R fournit deux fonctions pour supprimer des fichiers (et des dossiers) du système de fichiers:

  • unlink
  • file.remove

Ce n'est pas tout à fait évident quelles sont les différences, ni même quand utiliser qui, autre que cela unlink prend quelques arguments supplémentaires.

Lire le code source de ces fonctions n'aide pas beaucoup, car les deux appellent simplement une fonction C compilée.

Quelles sont les différences? Quand devez-vous utiliser unlink, de préférence à file.remove, ou vice versa?

27
r
demandé sur JJJ 2012-03-27 15:46:04

1 réponses

Ma conjecture est simplement que unlink était présent dans S, puisqu'il fait référence à Becker, Chambers et Wilks (1988), alors que file.remove (et file.copie, fichier.créer, etc.) ont fait partie de R depuis le début afin de fournir une famille de fonctions pour la manipulation générale de fichiers.

unlink correspond à une très ancienne fonction Unix (et existait certainement lorsque la version 1988 de S est apparue): http://en.wikipedia.org/wiki/Unlink_ (Unix)

Donc, unlink est là pour la compatibilité avec S, file.remove est là en tant que partie de R et les deux sont maintenus afin de supporter le code existant depuis longtemps de s et R. autre que cela, choisissez simplement celui qui convient le mieux à vos besoins (ou habitudes).

19
répondu mdsumner 2018-09-07 17:13:40