Verschiedene Ausgänge für "w", "who", "whoami" und "id"

9

Auf Online-Befehlszeilenplattformen, wie zum Beispiel auf der Codecademy, wenn ich laufe

for cmd in w who whoami id
do
    echo $cmd
    $cmd
    echo =========================
    echo "             "
done

Ich bekomme

w                              
00:52:54 up 8 days, 14:10,  0 users,  load average: 3.78, 2.98, 2.69      
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT       
=========================                            

who
=========================                                                 

whoami                          
ccuser                          
=========================                              
  
id
uid=1000(ccuser) gid=1000(ccuser) groups=1000(ccuser)     
=========================                   

Beachten Sie das nur whoamiund idgeben Sie etwas aus. Wenn ich dasselbe auf meinem Computer ausführe, werden für alle Befehle ähnliche Ergebnisse angezeigt.

Warum zeigt Codecademy den Benutzer nicht für wund an who? Was ist anders an diesen Befehlen?

Wer bin ich
quelle

Antworten:

13
  • id Berichte
    • die aktuellen Anmeldeinformationen des eigenen Prozesses; oder
    • die Anmeldeinformationen eines benannten Benutzers, die aus der Systemkontodatenbank ausgelesen wurden .
  • whoami meldet die aktuellen Anmeldeinformationen des eigenen Prozesses.
  • whound wmelden Sie die Tabelle der aktiven Anmeldesitzungen aus der Anmeldedatenbank .

BSD-Dokument stellt fest, dass whoamieine Teilmenge der Arbeit von ausgeführt idwird und dass idsie veraltet ist.

Ein System muss keine aktive Anmeldesitzungstabelle haben. Wenn unter Linux-Betriebssystemen und BSDs die Tabelle nicht beim Bootstrap erstellt oder seitdem gelöscht wurde, arbeitet das System ohne eine. Das An- und Abmelden erstellt es nicht implizit unter Linux-Betriebssystemen.

Darüber hinaus muss die Tabelle nicht für nicht privilegierte Benutzer lesbar sein, und weder whoder wBefehl noch der Befehl melden dies als Fehler.

Weiterführende Literatur

JdeBP
quelle