En la edición de 2016 de IEEE Std 1003.1-2008 (también conocido como The Open Group Base Issues Issue 7, o simplemente el estándar POSIX), la sección Justificación de la who
utilidad menciona lo siguiente:
Es aceptable que una implementación no produzca resultados para una invocación de quién mil .
¿Quién o qué es "mil"? ¿Por qué se permite que una implementación no produzca resultados who mil
?
who -ml
.who
produce ninguna salida parawho mil
,who unix SE
,who GnP
y cualquier otra cosa que arrojó en ella. Ni siquiera lowho am i
hizo funcionar. GNU Coreutils 8.25-2ubuntu2.Respuestas:
Al leer la página de manual de "who", dice que el primer argumento posicional representa el archivo que se debe leer. Al agregar el argumento "mil" le dice a "quién" abrir "./mil" e inspeccionarlo para obtener información de inicio de sesión ... dado que (presumiblemente) no existe dicho archivo, no genera nada ... como si no hubiera usuarios conectados Supongo que podría generar algunos mensajes de error útiles, pero eso puede ser contraproducente. Por ejemplo, imagine el caso en el que el sistema acaba de iniciarse y ningún usuario haya iniciado sesión aún. En ese caso, el archivo de inicio de sesión estaría vacío o no existiría. Por lo tanto, el resultado adecuado de "quién" es "sin respuesta" (es decir, ningún usuario ha iniciado sesión) en lugar de un mensaje de error engañoso.
fuente
who
(tendría que desmontar las utilidades de UNIX v1 para ver . Además, como la otra extensión XSIwho am i
rompe este patrón, no lo haría sea tan rápido esperewho mil
leer un archivo; podría ser un huevo de pascua similar.