Étant donné un chemin relatif ou absolu (dans un système de type Unix), je tiens à déterminer le chemin d'accès complet de la cible après la résolution de tout intermédiaire des liens symboliques. Des points Bonus pour les aussi la résolution de ~nom d'utilisateur de la notation dans le même temps.
Si la cible est un répertoire, il pourrait être possible de chdir() dans le répertoire, puis appeler getcwd(), mais j'ai vraiment envie de le faire à partir d'un script shell plutôt que d'écrire une C helper. Malheureusement, les coquillages ont tendance à essayer de cacher l'existence de liens symboliques de l'utilisateur (c'est bash sur OS X):
$ ls -ld foo bar
drwxr-xr-x 2 greg greg 68 Aug 11 22:36 bar
lrwxr-xr-x 1 greg greg 3 Aug 11 22:36 foo -> bar
$ cd foo
$ pwd
/Users/greg/tmp/foo
$
Ce que je veux, c'est une fonction de résoudre() de telle sorte que lorsqu'il est exécuté à partir du répertoire tmp dans l'exemple ci-dessus, résoudre("foo") == "/Users/greg/tmp/bar".