Linux
我們如何在 Linux 中通過單個命令將多個使用者添加到一個組中?
我必須使用
usermod -G groupname username
每次將使用者添加到組。有沒有辦法通過單行來做到這一點
usermod -G groupname user1,user2,user3
您可以使用一個命令設置組的成員列表:
gpasswd -M user1,user2,user3,... groupname
但是要使用它添加,您需要獲取現有列表:
gpasswd -M "$(getent group groupname | awk -F: '$4 {print $4","}')"user1,user2,user3,... groupname
但它更容易使用
xargs
或手動循環:for u in user1 user2 ... do gpasswd -a "$u" groupname done
或者:
$ cat file user1 user2 ... $ xargs -a file -n 1 gpasswd groupname -a
您可以將 bash 大括號擴展與 eval 一起使用
eval 'usermod -G groupname '{user1,user2,user3}';'
或循環命令
for i in user1 user2 user3; do usermod -G groupname $i; done