|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Victor Wagner 2:5020/400 03 Jul 2002 13:21:36 To : Timofey A. Bychkov Subject : Re: Узнать домашний коталог пользователя -------------------------------------------------------------------------------- AT> "Timofey A. Bychkov" <boobooin@dukascopy.com> writes: >> Hарод, подскажи плиз есть ли какая команда, чтоб узнать домашний каталог >> пользователя. >> Понимаю, что можно и в /etc/passwd посмотреть, но мне надо это в shell >> скрипт засунуть. >> Заранее спасибо >> Предполагаем, что имеем shell-скрипт, выполняющийся из-под не того пользователя, домашнюю директорию которого хотим узнать. И имя пользователя у нас хранится в переменной. Иначе все слишком тривиально - своя директория в ${HOME}, а если юзер hardoded, просто ссылаемся на ~user В bash - eval echo ~$user Тут нужны два раунда подстановки - на первом мы формируем конструкцию ~user, а потом еще раз пропускаем ее через shell. У меня в рутовом .bashrc всегда стоит export XAUTHORITY=`eval echo ~$USER/.Xauthority` для того чтобы если мы попали в рута по su или sudo, и в переменной USER живет имя реального юзера, руту давали X-овые программы запускать. Прочитать-то юзерский .Xauthority рут всегда сможет. А вообще-то и в /etc/passwd скриптом посмотреть несложно awk -F: "\$1==\"$user\" {print \$6}" /etc/passwd -- http://www.communiware.ru http://www.ice.ru/~vitus --- ifmail v.2.15dev5 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/15178ebed38a7.html, оценка из 5, голосов 10
|