macos - tiene - no hay usuario administrador mac
¿Cómo obtengo el nombre del usuario activo a través de la línea de comando en OS X? (9)
Definir ''usuario activo''.
Si la pregunta es "¿quién es el usuario conectado?", Entonces "¿quién soy yo?" O "whoami" está bien (aunque dan respuestas diferentes; "whoami" informa solo un nombre de usuario; "quién soy yo" informa sobre terminal y tiempo de inicio de sesión también).
Si la pregunta es "¿qué ID de usuario es el ID efectivo para el shell?", A menudo es mejor usar "id". Esto informa sobre la identificación de usuario real y efectiva y la identificación de grupo, y también sobre los ID de grupo suplementarios. Esto podría importar si el shell está ejecutando SUID o SGID.
¿Cómo obtengo el nombre del usuario activo a través de la línea de comando en OS X?
Estoy bastante seguro de que la terminal en OS X es como unix, por lo que el comando sería:
whoami
No tengo un mac en este momento, así que alguien me corrige si me equivoco.
La pregunta no ha sido respondida completamente, en mi humilde opinión. Trataré de explicarlo: tengo una entrada crontab que programa un procedimiento de comando bash shell, que a su vez realiza una limpieza de mis archivos; y, cuando termine, me envía una notificación usando el centro de notificación OS X (con el comando osascript -e ''display notification ...
). Si alguien (por ejemplo, mi esposa o mi hija) le cambia el usuario actual de la computadora, dejándome en segundo plano, la secuencia de comandos cron falla al enviar la notificación.
Entonces, ¿quién es el usuario actual? ¿Alguna otra persona se ha convertido en el usuario efectivo dejándome en segundo plano ? ¿ stat -f "%Su" /dev/console
devuelve el nombre de usuario activo actual?
La respuesta es sí; entonces, ahora mi secuencia de comandos del shell crontab ha sido modificada de la siguiente manera:
...
if [ "$(/usr/bin/stat -f ""%Su"" /dev/console)" = "loreti" ]
then /usr/bin/osascript -e /
''display notification "Cleanup done" sound name "sosumi" with title "myCleanup"''
fi
Por here
Comprobar que el propietario de / dev / console parece funcionar bien.
stat -f "%Su" /dev/console
Si desea mostrar el nombre completo (en lugar del nombre de usuario), agregue el indicador -F
:
$ id -F
Andrew Havens
Si quieres saber quién está actualmente conectado al sistema:
$ w 15:56:14 up 5 days, 20:58, 6 users, load average: 0.43, 0.53, 0.50 USER TTY LOGIN@ IDLE JCPU PCPU WHAT me pts/2 Fri19 1:03m 0.98s 0.98s -/bin/bash me pts/3 09:55 6:00m 0.43s 0.43s /bin/bash me pts/5 15:56 0.00s 0.23s 0.00s w
(Esto es de un sistema Linux, el formato en OS X puede ser ligeramente diferente, pero la información debe ser aproximadamente la misma).
Puede haber varias sesiones de inicio de sesión; UNIX está diseñado para ser un sistema multiusuario, después de todo.
como ''whoami'' ha quedado obsoleto, es probable que sea más compatible con el futuro:
id -un
EDITAR
La utilidad whoami ha sido obsoleta por la utilidad id (1), y es equivalente a id -un
. El comando id -p
se sugiere para un uso interactivo normal.