Вы можете добавить строку в свой скрипт, чтобы узнать, кто выполняет скрипт, используя
user=$(whoami)
echo $user
Если скрипт нужно запускать с помощью sudo, whoami
всегда будет указывать root как пользователя, поэтому вам нужно использовать переменную $SUDO_USER
user=$SUDO_USER
echo $user
Если пользователь использует su -
, а затем выполняет скрипт, то приведенные выше решения не будут работать, используйтеwho am i
user=$(who am i | awk '{print $1}')
echo $user
Я также создал простой скрипт.
Ниже скрипт создает нового пользователя в системе.
Я очень рад, если вы можете использовать его в качестве ссылки.
Заранее установите имя группы в переменную VALIDGROUPS и
выберите его во время выполнения.
1 #!/bin/bash
2
3 VALIDGROUPS="GROUP1, GROUP2, GROUP3"
4
5 printf "Add your account on this system\n\n"
6 printf "Enter your name here, No space allowed for your user name : "
7 read USERNAME
8
9 printf "Valid user groups are $VALIDGROUPS Choose select one: "
10 read USERGROUP
11
12 grep $USERGROUP /etc/group 2>&1>/dev/null
13 if [ $? != 0 ]
14 then
15 printf "Group Name you entered $USERGROUP is not valid\n"
16 printf "Creating Abort!\n"
17 exit 1
18 else
19 useradd -g $USERGROUP -d /home/$USERNAME -s /bin/bash -m $USERNAME
20 passwd $USERNAME
21 fi
22
23 id $USERNAME
24
25 printf "done!\n"
26
27 exit 0