Macports sudo расширяет ~ / var / root в python - PullRequest
0 голосов
/ 04 февраля 2011

Я установил версию macports sudo.Все хорошо, кроме одного.Использование python 2.6 для расширения ~ до домашнего каталога пользователя приводит к выводу, отличному от версии sudo, поставляемой со Snow Leopard.

Например, рассмотрим следующий код Python:

#expand_home_dir.py
import os

os.path.expanduser('~')

Ниже приведены 3 различных вызова кода, указанного выше.Первый вызов с использованием sudo использует версию Macports, потому что мой $PATH начинается с /opt/local/bin:

robert$ python2.6 expand_home_dir.py 
/Users/robert
robert$ sudo python2.6 expand_home_dir.py 
/var/root
robert$ /usr/bin/sudo python2.6 expand_home_dir.py
/Users/robert

Есть идеи, почему это происходит?

1 Ответ

2 голосов
/ 04 февраля 2011

Переменная среды HOME управляет тем, что расширяется.Похоже, ваша версия sudo, установленная на MacPorts, сбрасывает HOME в домашний каталог пользователя root, а версия, установленная системой, - нет.Что произойдет, если вы введете sudo sh -c 'echo $HOME'?

...