su -l root -c "echo $ HOME" печатает мой пользовательский дом

Это мой первый пост,

У меня есть некоторые вопросы о su – [user] -c [command]

Я сделал несколько поисков, я нашел эту тему и другую , связанную с моим вопросом.

Я пытаюсь установить переменную среды для пользователя, если она не существует.

# This function checks for a user $1, a var nammed $2 to $3 and set it to $3 if $2 not set. # $1: User to set env # $2: Var to set # $3: Value to add in $2 if not exist in $2 function setEnvIfNotDef () { if [ ! su ${1} -c "echo "${!2}" | grep "${3}"" ] then if [ ${2} = "PATH" ] then su ${1} -c "export ${2}=${!2}:${3}" else su ${1} -c "export ${2}=${3}" fi fi } setEnvIfNotDef ${USER_NAME} "TEST_HOME" ${INSTALL_PATH} 

(USER_NAME и INSTALL_PATH определены в моем коде ^^)

Проблема в том, что когда я пытаюсь выполнить команду su-root -c в моем терминале на Yosemite / CentOS7.

 Elio@Hackintosh-Elio [16:43:41] [Elio] #7975 $ su - root -c "whoami" Password: root Elio@Hackintosh-Elio [16:43:59] [Elio] #7976 $ su - root -c "echo $HOME" Password: /Users/Elio 

После того, как su равно -l правильно? Я не должен быть в корневой среде?

Немного помогите пожалуйста? 🙂

Благодаря

Interesting Posts

установка проприетарных драйверов nvidia Kali 2016.2

Извлечение частей текста с помощью sed, awk

Инструмент, который помогает мне быть разумным в разрешениях?

Принуждение X для распознавания видеопамяти, сохранение файла 99-vesa

Отобразить текущий рабочий каталог в терминале

Выполнить функцию readline без привязки клавиш?

Политика Open Source: как это получается? Решения, полномочия и пол

Каково точное поведение команды: изменение IP-адреса?

NFTables NAT не закреплен

Очень медленное соединение SSH, не связанное с опцией GSSAPIAuthentication

Какая версия NFS используется моим сервером NFS?

Надежная сегментация csv-файла, содержащего шумные данные

Копирование / резервное копирование всех файлов, содержащих файлы, соответствующие регулярному выражению

Считывать импульс громкости из командной строки? (Я хочу: «pactl GET-sink-volume»)

Удалите функцию зашифрованного LVM, чтобы удалить введенный запрос пароля во время загрузки Ubuntu

Linux и Unix - лучшая ОС в мире.