Предположим, я хочу отредактировать /etc/profile
:
PYTHONPATH = /home/CURRENT_USER/
$USER
обычно должен быть установлен на текущего пользователя, и $HOSTNAME
к текущему имени хоста. Если нет, вы также можете получить их из вывода whoami
и hostname
Кроме того, домашний каталог пользователя не обязательно находится в /home/[username]
. Вы должны использовать значение $HOME
вместо.
Если вы хотите увидеть все доступные переменные окружения, используйте следующую команду:
bash$ set
Помните о чувствительности к регистру, для имени хоста вам понадобятся $ HOSTNAME и $ USER.
bash$ echo $USER
sparks
bash$ echo $HOSTNAME
servername
Другой подход - добавить вызов в sys.addsitedir
в sitecustomize.py
а не PYTHONPATH.
Однако, начиная с Python 2.6, вам, вероятно, тоже не нужно этого делать, потому что /home/$USER/.local/lib/python2.6/site-packages
автоматически добавляется к sys.path
. Это хороший выбор стандартного места для размещения пользовательских модулей / пакетов; вам бы не хотелось добавлять сам домашний каталог в качестве пути к модулю, поскольку он содержит все виды вещей, не являющихся модулями, что может затруднить импорт.
Видеть PEP370 для подробностей.
В python вызовите os.uname (), чтобы получить имя хоста (и другие данные в массиве).