¿Cuál es el equivalente de Windows del comando "whoami" de Unix?

72

¿Existe un equivalente de Windows del comando "whoami" de Unix? Si es así, ¿qué es?

Dormir
fuente
2
Sí existe y es también whoami
DeepSpace101
use el comando "sesión de consulta" para obtener una lista de usuarios de servicios de terminal actualmente conectados o desconectados,
Martin

Respuestas:

73

Desde Windows 2000, el whoamicomando ha sido parte de la línea de comando estándar (¡gracias a pk por aclarar eso en los comentarios!).

Puede hacer esto: abra un símbolo del sistema y escriba "set" y luego presione enter. Esto muestra variables de entorno activas. El nombre de usuario registrado actualmente se almacena en la variable env USERNAME y su dominio se almacena en la variable USERDOMAIN.

Para aprovechar las otras respuestas, desde una línea de cmd:

echo %USERDOMAIN%\%USERNAME%

le proporcionará el usuario registrado completo en formato dominio \ nombre de usuario.

Puede hacer lo mismo con Powershell con esto:

write-host $env:userdomain\$env:username
squillman
fuente
1
+1 para el aspecto educativo y para incluir el dominio y el nombre de usuario
tomjedrz
@squillman ¿Cómo puedo hacer que esto funcione cuando ejecuto un símbolo del sistema como usuario de Sytem? Porque en ese caso, no hay una variable de entorno como% USERDOMAIN% o% USERNAME%
GianT971
@ GianT971 ¿Te refieres a LocalSystem? No hay una forma para esa cuenta, ya que no está asociada con un usuario conectado. Normalmente, esta cuenta se usa para servicios y cuando un servicio se ejecuta como LocalSystem, entonces toma el contexto de seguridad del administrador de control de servicios.
Squillman
Okay. Sí, eso es lo que quise decir. Tal vez con las últimas versiones de PowerShell sea posible, ya que cuando se ejecuta una aplicación .NET invocando Environment.Username en la cuenta LocalSystem, el resultado es "Sistema". Pero aún no he echado un buen vistazo a PowerShell
GianT971
@ GianT971 Puede generar procesos cmd o powershell y ejecutar scripts, pero no obtendrá un shell interactivo.
Squillman
16

Esto informa la mayor parte de la misma información que todos los demás dicen, pero también puede escribir

SET U

Devolverá cualquier variable de entorno que comience con U.

Además, SET L puede ser útil para depurar problemas de inicio de sesión.

Dayton Brown
fuente
1
A veces solo ves consejos que tienen que ser compartidos, esos dos son geniales.
Tinas
5

ECHO% USERNAME%

ggponti
fuente
5

Desde la línea de comando? "echo% username%" debería hacerlo. El usuario conectado se almacena en la variable de entorno "nombre de usuario".

Desde una sesión gráfica, ctrl-alt-del le mostrará una pantalla con el usuario registrado que se muestra.

sysadmin1138
fuente
5

Depende de su sistema operativo específico, pero el comando whoami está disponible como parte del Kit de recursos de Windows 2000 y las Herramientas de soporte de Windows XP SP2 .

RedFilter
fuente
2
+1 También disponible por defecto en Vista +
Oskar Duveborn
Ajá, pensé que había usado whoami en mi computadora portátil en casa recientemente, creo que funcionó porque era vista. aquí en el trabajo estoy en xp
Kip
3

Lo anterior es nativo del sistema operativo y las mejores respuestas, pero en el espíritu de integridad, hay literalmente un whoami.exe en las herramientas de soporte de 2000 y XP. Con 32 kb, sería fácil implementar la política de grupo si tuvieras el corazón puesto en ese comando.

Kara Marfia
fuente
1

En el autoexec, o en un indicador de DOS, escriba prompt% USERDOMAIN% \% USERNAME% $ p $ g , y mostrará quién está conectado y verá el indicador típico de esta manera: DOMAIM \ username C:>

usuario156428
fuente