Я хочу получить пользователей группы отдельно для каждой существующей группы в / etc / group
. У меня есть следующий сценарий:
#! /bin/bash
while IFS=: read user pass uid users
do
echo -e "$full :\n\
Pseudo : $user\n\
UID :\t $uid\n\
Users :\t $users\n\\n"
done < /etc/group
С помощью этого скрипта я получаю всех пользователей, разделенных ,
, но они мне нужны отдельно, чтобы изменить группы, к которым принадлежит пользователь, с помощью usermod -a -g group user
Вы можете перебирать элементы в списке, разделенном запятыми, с помощью:
IFS=, for user in $users
do
...
done
IFS
- это разделитель полей, который используется для разделения раскрытия переменной на слова, поэтому он говорит ему использовать ,
в качестве разделителя вместо пробелов.