La méthode suivante est-elle la meilleure façon d'obtenir le répertoire personnel de l'utilisateur en cours d'exécution? Ou y a-t-il une fonction spécifique que j'ai exagérée?
os.Getenv("HOME")
Si ce qui précède est correct, est-ce que quelqu'un sait si cette approche est garantie de fonctionner sur des plates-formes non Linux, par exemple Windows?
$HOME
n'est pas nécessairement le répertoire personnel de l'utilisateur. Par exemple, je peux écrireexport HOME=/something/else
avant de lancer votre programme. Habituellement, cela signifie que je veux que le programme le traite/something/else
comme mon répertoire personnel pour une raison quelconque, et généralement le programme devrait l'accepter. Mais si vous avez vraiment besoin du répertoire personnel réel de l'utilisateur , une variable d'environnement ne vous le donnera pas nécessairement.