Как узнать имя пользователя, который запускает скрипт - PullRequest
0 голосов
/ 14 февраля 2011

Чтобы использовать команду chown, мне нужно знать, кто запускает мой скрипт. Настоящее имя, потому что оно будет работать с sudo. Как я могу это сделать?

Ответы [ 4 ]

3 голосов
/ 14 февраля 2011

Для полноты есть также id -un и whoami, но, вероятно, предпочтительнее использовать env vars, если у вас нет причин не делать этого.

3 голосов
/ 14 февраля 2011

Попробуйте переменные LOGNAME или USER env.

1 голос
/ 16 декабря 2011
#!/bin/bash
# Init
FILE="/tmp/out.$$"
GREP="/bin/grep"
#....
# Make sure only root can run our script
if [ "$(id -u)" != "0" ]; then
echo "This script must be run as root" 1>&2
exit 1
fi
# ...
0 голосов
/ 14 февраля 2011

id -run дает вам реальный UID, а не эффективный.

...