Это лучший способ получить домашний каталог работающего пользователя? Или есть какая-то конкретная функция, которую я переиграл?
os.Getenv("HOME")
Если вышесказанное верно, может ли кто-нибудь знать, будет ли этот подход гарантированно работать на платформах, отличных от Linux, например, Windows?
$HOME
не обязательно является домашним каталогом пользователя. Например, я могу написатьexport HOME=/something/else
перед запуском вашей программы. Обычно это означает, что я хочу, чтобы программа по/something/else
какой-то причине считалась моим домашним каталогом, и обычно программа должна это принять. Но если вам действительно нужен реальный домашний каталог пользователя, переменная среды не обязательно даст вам его.