{
    "mode": "man",
    "parameter": "who",
    "section": "1",
    "url": "https://www.chedong.com/phpMan.php/man/who/1/json",
    "generated": "2026-06-16T15:54:06Z",
    "synopsis": "who [OPTION]... [ FILE | ARG1 ARG2 ]",
    "sections": {
        "NAME": {
            "content": "who - show who is logged on\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "who [OPTION]... [ FILE | ARG1 ARG2 ]\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "Print information about users who are currently logged in.\n",
            "subsections": [
                {
                    "name": "-a --all",
                    "content": "same as -b -d --login -p -r -t -T -u\n",
                    "flag": "-a",
                    "long": "--all"
                },
                {
                    "name": "-b --boot",
                    "content": "time of last system boot\n",
                    "flag": "-b",
                    "long": "--boot"
                },
                {
                    "name": "-d --dead",
                    "content": "print dead processes\n",
                    "flag": "-d",
                    "long": "--dead"
                },
                {
                    "name": "-H --heading",
                    "content": "print line of column headings\n\n--ips  print  ips  instead  of hostnames. with --lookup, canonicalizes based on stored IP, if\navailable, rather than stored hostname\n",
                    "flag": "-H",
                    "long": "--heading"
                },
                {
                    "name": "-l --login",
                    "content": "print system login processes\n",
                    "flag": "-l",
                    "long": "--login"
                },
                {
                    "name": "--lookup",
                    "content": "attempt to canonicalize hostnames via DNS\n",
                    "long": "--lookup"
                },
                {
                    "name": "-m",
                    "content": "",
                    "flag": "-m"
                },
                {
                    "name": "-p --process",
                    "content": "print active processes spawned by init\n",
                    "flag": "-p",
                    "long": "--process"
                },
                {
                    "name": "-q --count",
                    "content": "all login names and number of users logged on\n",
                    "flag": "-q",
                    "long": "--count"
                },
                {
                    "name": "-r --runlevel",
                    "content": "print current runlevel\n",
                    "flag": "-r",
                    "long": "--runlevel"
                },
                {
                    "name": "-s --short",
                    "content": "print only name, line, and time (default)\n",
                    "flag": "-s",
                    "long": "--short"
                },
                {
                    "name": "-t --time",
                    "content": "print last system clock change\n",
                    "flag": "-t",
                    "long": "--time"
                },
                {
                    "name": "-T -w --mesg",
                    "content": "add user's message status as +, - or ?\n",
                    "flag": "-w",
                    "long": "--mesg"
                },
                {
                    "name": "-u --users",
                    "content": "list users logged in\n",
                    "flag": "-u",
                    "long": "--users"
                },
                {
                    "name": "--message",
                    "content": "same as -T\n",
                    "long": "--message"
                },
                {
                    "name": "--writable",
                    "content": "same as -T\n\n--help display this help and exit\n",
                    "long": "--writable"
                },
                {
                    "name": "--version",
                    "content": "output version information and exit\n\nIf FILE is not specified, use /var/run/utmp.  /var/log/wtmp as FILE is common.  If ARG1  ARG2\ngiven, -m presumed: 'am i' or 'mom likes' are usual.\n",
                    "long": "--version"
                }
            ]
        },
        "AUTHOR": {
            "content": "Written by Joseph Arceneaux, David MacKenzie, and Michael Stone.\n",
            "subsections": []
        },
        "REPORTING BUGS": {
            "content": "GNU coreutils online help: <https://www.gnu.org/software/coreutils/>\nReport any translation bugs to <https://translationproject.org/team/>\n",
            "subsections": []
        },
        "COPYRIGHT": {
            "content": "Copyright  ©  2020 Free Software Foundation, Inc.  License GPLv3+: GNU GPL version 3 or later\n<https://gnu.org/licenses/gpl.html>.\nThis is free software: you are free to change and redistribute it.  There is NO WARRANTY,  to\nthe extent permitted by law.\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "Full documentation <https://www.gnu.org/software/coreutils/who>\nor available locally via: info '(coreutils) who invocation'\n\n\n\nGNU coreutils 8.32                          January 2026                                      WHO(1)",
            "subsections": []
        }
    },
    "summary": "who - show who is logged on",
    "flags": [
        {
            "flag": "-a",
            "long": "--all",
            "arg": null,
            "description": "same as -b -d --login -p -r -t -T -u"
        },
        {
            "flag": "-b",
            "long": "--boot",
            "arg": null,
            "description": "time of last system boot"
        },
        {
            "flag": "-d",
            "long": "--dead",
            "arg": null,
            "description": "print dead processes"
        },
        {
            "flag": "-H",
            "long": "--heading",
            "arg": null,
            "description": "print line of column headings --ips print ips instead of hostnames. with --lookup, canonicalizes based on stored IP, if available, rather than stored hostname"
        },
        {
            "flag": "-l",
            "long": "--login",
            "arg": null,
            "description": "print system login processes"
        },
        {
            "flag": "",
            "long": "--lookup",
            "arg": null,
            "description": "attempt to canonicalize hostnames via DNS"
        },
        {
            "flag": "-m",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-p",
            "long": "--process",
            "arg": null,
            "description": "print active processes spawned by init"
        },
        {
            "flag": "-q",
            "long": "--count",
            "arg": null,
            "description": "all login names and number of users logged on"
        },
        {
            "flag": "-r",
            "long": "--runlevel",
            "arg": null,
            "description": "print current runlevel"
        },
        {
            "flag": "-s",
            "long": "--short",
            "arg": null,
            "description": "print only name, line, and time (default)"
        },
        {
            "flag": "-t",
            "long": "--time",
            "arg": null,
            "description": "print last system clock change"
        },
        {
            "flag": "-w",
            "long": "--mesg",
            "arg": null,
            "description": "add user's message status as +, - or ?"
        },
        {
            "flag": "-u",
            "long": "--users",
            "arg": null,
            "description": "list users logged in"
        },
        {
            "flag": "",
            "long": "--message",
            "arg": null,
            "description": "same as -T"
        },
        {
            "flag": "",
            "long": "--writable",
            "arg": null,
            "description": "same as -T --help display this help and exit"
        },
        {
            "flag": "",
            "long": "--version",
            "arg": null,
            "description": "output version information and exit If FILE is not specified, use /var/run/utmp. /var/log/wtmp as FILE is common. If ARG1 ARG2 given, -m presumed: 'am i' or 'mom likes' are usual."
        }
    ],
    "examples": [],
    "see_also": [],
    "tldr": {
        "source": "official",
        "description": "Display who is logged in and related data (processes, boot time).",
        "examples": [
            {
                "description": "Display the username, line, and time of all currently logged-in sessions",
                "command": "who"
            },
            {
                "description": "Display all available information",
                "command": "who {{-a|--all}}"
            },
            {
                "description": "Display all available information with table headers",
                "command": "who {{-aH|--all --heading}}"
            }
        ]
    }
}