Résolution d'un répertoire $ HOME distant via FTP / SFTP
-
22-07-2019 - |
Question
En Objective-C, NSString a une méthode appelée
stringByExpandingTildeInPath
Cette méthode utilisera une chaîne telle que " ~ / Documents " et résolvez-le en "/ Users / Nick / Documents". Le " ~ " Le tilde est résolu dans le répertoire de base de l'utilisateur actuel de la machine sur laquelle le programme est exécuté.
Maintenant, ma question est la suivante ... J'écris un petit utilitaire FTP / SFTP utilisant Cocoa et Objective-C. Comment résoudre un chemin tilde (~) sur une machine distante via FTP / SFTP?
Par exemple. Un utilisateur veut télécharger un fichier sur
sftp://remote-host.com:~/
Si remote-host.com est un serveur Linux ou OSX, ce chemin est totalement valide. Cependant, le téléchargement d'un fichier ne fonctionne que lorsque je spécifie le chemin absolu. Je ne sais pas s'il s'agit d'une limitation du framework que j'utilise, ConnectionKit . , ou si c’est quelque chose que je dois implémenter manuellement. Je suis ok avec ce dernier mais, des suggestions sur comment?
La solution
Vous pouvez simplement supprimer le " ~ / " (et utilisez le reste comme chemin relatif) - généralement, le serveur doit vous placer par défaut dans le répertoire de base de l'utilisateur lorsque vous vous connectez.