Как попасть в HOME, если задан USER?

Похоже, это работает начиная с Plasma 5.8, по крайней мере для Chrome, но не для Chromium. Вам нужно добавить приложения на рабочий стол через меню гамбургера и установить флажок "открывать в новом окне".

Обновление: После одного из последних обновлений Plasma это больше не работает...

41
06.12.2015, 23:11
2 ответа

Если пользователь не существует, getent вернет ошибку.

Вот небольшая функция оболочки, которая не игнорирует код выхода getent :

get_home() {
  local result; result="$(getent passwd "$1")" || return
  echo $result | cut -d : -f 6
}

Вот пример использования:

da_home="$(get_home missing_user)" || {
  echo 'User does NOT exist!'; exit 1
}

# Now do something with $da_home
echo "Home directory is: '$da_home'"
3
27.01.2020, 19:35

Если вы вошли в систему как пользователь root, если вы знаете пароль USERили если USERне имеет пароля, существует еще один вариант:

    su -c 'echo ~' ${USER}

При стандартном поведении su, если USERне определено или пусто, то suпопытается запустить команду от имени пользователя root.

Если значение USERне является допустимым именем пользователя, будет выдано соответствующее сообщение об ошибке:su: user <user> does not exist.

Здесь уже есть много хороших ответов, но это все еще может кому-то помочь.

1
27.01.2020, 19:35

Теги

Похожие вопросы