En un script, ¿cómo puedo comprobar si el usuario "Bill" es miembro del grupo admin (grupo 80)?
Pienso usar esto en un script para comprobar si lo es y si no lo es, hacerlo usuario administrador.
En un script, ¿cómo puedo comprobar si el usuario "Bill" es miembro del grupo admin (grupo 80)?
Pienso usar esto en un script para comprobar si lo es y si no lo es, hacerlo usuario administrador.
De otra manera:
if groups username | grep -q -w admin;
then
echo "Is admin";
else
echo "Not admin";
fi
groups username
mostrará todos los grupos de nombres de usuario.grep -q -w admin
buscará (sin salida -q
) para la palabra admin en la lista de grupos de nombres de usuario.Como sugiere David Koontz , groups
ha quedado obsoleta por id
utilidad. Por lo tanto, la if
La frase debería ser como la siguiente para hacer lo mismo:
if id -Gn username | grep -q -w admin;
Aquí hay un simple script para comprobar si el usuario está en el grupo de administradores y si no lo añade:
#!/bin/bash
echo "This script will add a non-admin user to the admin group"
echo "Please enter username"
read username
if groups $username | grep -q -w admin;
then
echo "User '$username' already is in the admin group";
else
dscl . -append /Groups/admin GroupMembership $username;
echo "User '$username' has been added to the admin group!";
echo "Please restart your Mac to apply the changes.";
fi
Guarda el script en algún sitio y hazlo ejecutable abriendo el Terminal e introduciendo:
chmod 755 /path/to/script
Ejecuta el script con sudo /path/to/script
.
Dado que el administrador de Mac por defecto de un sistema operativo de servidor es miembro de varios grupos de administración (por ejemplo, _lpadmin, access_bpf, _appserveradm, etc.), podría añadirlos también en el script.
Ejemplo:
añada la siguiente línea al script para añadir el usuario al grupo 'App Server Admins'
dscl . -append /Groups/_appserveradm GroupMembership $username;
Para mejorar el script también podrías añadir una condición para comprobar si el usuario introducido existe en absoluto.
AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.